Silverlight için local, test amaçlı signage certificate oluşturmak.

0 dakikada yazıldı

17591 defa okundu

Düzenle

Arada sırada inbox'ıma düşen sorulardan belki de en popülerleri genelde
code signage sertifikaları ile ilgili oluyor. Özellikle lokalde test
amaçlı olarak Silverlight'un Out-Of-Browser modunda kullanmak durumunda
kaldığımız bu signage sertifikalarını yaratma konusunda sıkıntı
yaşandığını görüyorum. Gelin adım adım kendi sertifikamızı yaratıp bir
Silverlight uygulamasını nasıl imzalarız göz atalım.

İlk olarak Visual Studio ile beraber gelen "Visual Studio Command
Prompt"u Admin hakları ile çalıştırıyoruz. Hemen aşağıdaki komutu
copy-past alarak başlatabilirsiniz.

makecert -n "CN=testRootCA" -r -sv testRootCA.pvk testRootCA.cer

Root Sertifikamızı Yaratıyoruz.
Root Sertifikamızı Yaratıyoruz.

Şimdi yarattığımız bu sertifikayı Trusted Root Certificate olarak
makinemize eklememiz gerek. Bunun için takip etmemiz gereken adımlar
biraz uzun. Sırayla aşağıdaki listeyi takip edebilirsiniz.

  1. Start menüsünden Run kısmına MMC yazarak "Enter"layıp
    Management Console'u başlatın.
  2. Menülerden File / Add Remove Snap-In komutunu verin.
  3. Sol listeden "Certificates"'e çift tıklayarak ekleyin.
  4. Bir sonraki adımda "Computer Account" seçeneğini seçin.
  5. Bir sonraki adımda "Finish" diyerek işlemi tamamlayın.
  6. "OK" diyerek pencereyi kapatın ve ana MMC konsoluna geri dönün.

Artık Management konsolumuz hazır olduğunda göre bir önceki adımda
yarattığımız sertifikayı Import edebiliriz. Trusted Root Certification
Authorities
altındaki Certificates listesine sağ tıklayarak All
Tasks / Import
komutunu verebilirsiniz. İlk adımda yarattığımız
sertifika dosyasını gösterip "Next" "Next"lere basa basa Import işlemini
tamamlayabilirsiniz.

Root Sertifikamızı Trusted liste eklerken...
Root Sertifikamızı Trusted liste eklerken...

Sıra geldi bu Root Certificate üzerinden bir Signage Certificate
yaratmaya. Eğer ilk adımdaki Command Prompt hala açıkça doğrudan onu
kullanabilirsiniz.

makecert -sk testSigning -iv testRootCA.pvk -n "CN=testSigning" -ic
testRootCA.cer testSigning.cer -sr currentuser -ss My

Yukarıdaki komutu çalıştırdığınızda RootCA üzerinden yeni bir Signage
sertifikası yaratılmış olacaktır. Söz konusu sertifika otomatik olarak
lokal kullanıcı hesabı altında da kaydedilecektir. Son bir adım daha
kaldı :) 2. adımda açtığımız MMC üzerinde Root Sertifikamızı Trusted
Authority olarak tanımlamıştık. Aynı yerde bir de Trusted Publishers
sertifika listesi göreceksiniz. İşte oraya da bu son yarattığımız
Signage Sertifikamızı eklememiz gerek.

Import işlemini başlattıktan sonra bu sefer de testSignage adındaki
Signage sertifikamızı listeye ekleyebiliriz.

Silverlight uygulamasını imzalamak!

Sıra geldi bu imza sertifikası ile uygulamamızı imzalamaya. Yine admin
hakları ile açılmış Visual Studio Command Prompt üzerinden aşağıdaki
komut ile yarattığımız imza sertifikasını kullanarak herhangi bir XAP
dosyasını imzalayabiliyoruz.

signtool.exe sign /v /n testSigning dene.xap

Artık XAP dosyamızı projemize geri taşıyabilir ve imzalanmış uygulama
ile testlerimizi yapabiliriz.

Silverlight XAP'ımızı imzalarken...
Silverlight XAP'ımızı imzalarken...

Unutmayın ki bu şekilde bir sertifika ile uygulamanızı webde
yayınlamanın bir anlamı olmayacaktır. Webde yayınlama öncesi uygun bir
sertifika sağlayıcıdan sertifika satın alarak XAP'ınızı imzalamanız
şart.

İmzalanmış Silverlight uygulamamızın yükleme ekranı.
İmzalanmış Silverlight uygulamamızın yükleme ekranı.

Hepinize kolay gelsin.