我正在嘗試關注these instructions以使用WIF創建SAML2標記。如何創建測試簽名證書?
的指示說
要提供簽約憑據SecurityTokenDescriptor,必須 首先得到簽名證書作爲 X509Certificate2實例的引用。
X509Certificate2 signingCert = CertificateUtil.GetCertificate(StoreName.My, StoreLocation.LocalMachine, "CN=busta-rpsts.com "); SecurityKeyIdentifier ski = new SecurityKeyIdentifier(new SecurityKeyIdentifierClause[] { new X509SecurityToken(signingCert).CreateKeyIdentifierClause<X509SubjectKeyIdentifierClause>() }); X509SigningCredentials signingCreds = new X509SigningCredentials(signingCert, ski); descriptor.SigningCredentials = signingCreds;
我試圖讓使用makecert包括主題密鑰識別測試證書:這個,你可以創建一個 SecurityKeyIdentifier併產生SigningCredentials實例
下面的代碼提供,但是當我通過上面的代碼運行任何證書時,我會得到以下代碼System.NotSupportedException:
'X509SecurityToken'不支持'X509SubjectKeyIdentifierClause' 創建。
new X509SecurityToken(signingCert).CreateKeyIdentifierClause<X509SubjectKeyIdentifierClause>()
現在我知道了指示說...
注:與makecert.exe創建的證書不包括主題 關鍵
這調用此線時出現標識符,因此不能以這種方式使用。您應該使用Windows Server產品證書 或從Verisign或同等供應商處購買證書 。
...不過我用的說法-eku 2.5.29.14,我希望這將解決這個問題,我覺得這個圖像顯示,我已經做到了嗎?
誰能給我我如何可以創建我可以用它來獲取此代碼的工作,或點我的方向是正確的測試證書的說明?我也不確定它們是什麼意思,「您應該使用Windows Server生成證書」。是否提前意味着creating a CSR?
謝謝:)
感謝您的回覆。 XCA應用程序上的按鈕呈灰色。最終我意識到我需要創建一個數據庫。我明天繼續你的指示。 –