Utvecklingstips

Signera applikationer för ClickOnce-installation

I Visual Studio 2005 finns en inbyggd funktion för att skapa s.k. ClickOnce-installationspaket där man lätt kan installera applikationer via webben. Installationspaketet måste signeras med ett certifikat. Visual Studio kan själv skapa ett certifikat, men det har väldigt kort giltighetstid. Om man har en egen certifikatserver kan man skapat ett eget certifikat med lång hållbarhet:

Skapa en ny certifikatmall för kodsignering i CA-servern

1) Öppna Certification Authority under administrativa verktyg i kontrollpanelen

2) Högerklicka på Certificate Templates och välj Manage

3) Högerklicka på Code Signing och välj Duplicate Template. Döp certifikatmallen till något lämpligt

4) Välj fliken RequestHandling och kryssa i rutan Allow private key to be exported. Öka giltighetstiden från ett år om du vill.

5) Sätt lämpliga rättigheter på fliken Security, tryck OK

6) Gå tillbaka till Certification Authority. Högerklicka på Certificate Templates och välj New -> Certificate Template to Issue

7) Välj din nya mall

8) Starta om CA-servern

Skapa ett certifikat för kodsignering

1) Surfa till http://dinserver/certsrv

2) Välj avancerad förfrågan, och välj att skapa och skicka en ny förfrågan

3) Välj mallen du skapade ovan.

4) Kryssa i Mark keys as exportable och Export keys to file. Döp filen med den privata nyckeln till något passande, t.ex. codesigning.pvk

5) Tryck på Submit

6) Ladda ner certifikatet och spara det som codesigning.cer tillsammans med privata nyckeln

7) Leta upp pvk2pfx.exe, det ligger normalt i c:\program files\Microsoft Visual Studio 8\Common 7\tools\bin

8) Skapa en certifikatfil med privata nyckeln inbakad:

                      pvk2pfx.exe –pvk codesigning.pvk –spc codesigning.cer –pi lösenordet_du_skrev_i_punkt_4_ovan –pfx codesigning.pfx

Nu kan du i ditt VS2005-projekt öppna Egenskaper och på fliken Publicera välja ditt nyskapade certifikat codesigning.pfx.

Andra bloggar om: 
 
Anders Bornholm

2007-06-04 kl. 16:44

Web Analytics