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

0 dakikada yazıldı

17501 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.