.NET Fedlet 支持对外出 XML(可扩展标记语言)请求(如 Authn 请求)和注销请求签名。
使用 Microsoft Management Console 的证书管理单元将 X.509 证书导入到本地计算机帐户内的个人文件夹中。要使用此管理单元,请参见以下 Microsoft 文章:
通过查看“属性”对话框并输入值,为此证书指定一个易记名称。(保存此值以在步骤 4 中使用。)
为 Internet Information Server (IIS) 使用的用户帐户设置相应的权限,以允许其读取证书,如 Microsoft 文章中所述。例如:
在 .NET Fedlet 的扩展元数据文件 (sp-extended.xml) 中,指定在步骤 2 中指定的易记名称,作为 signingCertAlias 属性的值。例如:
<Attribute name="signingCertAlias"> <Value>MyFedlet</Value>
在 .NET Fedlet 的服务提供者元数据文件 (sp.xml) 中,添加签名密钥的 KeyDescriptor。
使用之前使用过的 Microsoft Management Console 证书管理单元导出以 Base64 编码形式包括在 KeyDescriptor XML(可扩展标记语言)块中的证书的公钥。此 KeyDescriptor 必须是 SPSSODescriptor 中的第一个子元素。例如:
<KeyDescriptor use="signing"> <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:X509Data> <ds:X509Certificate> MIICQDCCAakCBEeNB0swDQYJKoZIhvcNAQEEBQAwZzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNh bGlmb3JuaWExFDASBgNVBAcTC1NhbnRhIENsYXJhMQwwCgYDVQQKEwNTdW4xEDAOBgNVBAsTB09w ZW5TU08xDTALBgNVBAMTBHRlc3QwHhcNMDgwMTE1MTkxOTM5WhcNMTgwMTEyMTkxOTM5WjBnMQsw CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLU2FudGEgQ2xhcmExDDAK BgNVBAoTA1N1bjEQMA4GA1UECxMHT3BlblNTTzENMAsGA1UEAxMEdGVzdDCBnzANBgkqhkiG9w0B AQEFAAOBjQAwgYkCgYEArSQc/U75GB2AtKhbGS5piiLkmJzqEsp64rDxbMJ+xDrye0EN/q1U5Of\+ RkDsaN/igkAvV1cuXEgTL6RlafFPcUX7QxDhZBhsYF9pbwtMzi4A4su9hnxIhURebGEmxKW9qJNY Js0Vo5+IgjxuEWnjnnVgHTs1+mq5QYTA7E6ZyL8CAwEAATANBgkqhkiG9w0BAQQFAAOBgQB3Pw/U QzPKTPTYi9upbFXlrAKMwtFf2OW4yvGWWvlcwcNSZJmTJ8ARvVYOMEVNbsT4OFcfu2/PeYoAdiDA cGy/F2Zuj8XJJpuQRSE6PtQqBuDEHjjmOQJ0rV/r8mO1ZCtHRhpZ5zYRjhRC9eCbjx9VrFax0JDC /FfwWigmrW0Y0Q== </ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </KeyDescriptor>
重新启动与 .NET 应用程序关联的应用程序池。