.NET Fedlet は、NameID、属性、および表明の要素に対して、送信する XML 要求を暗号化したり、受信する応答を復号化したりできます。
Micrsoft 管理コンソールの証明書スナップインを使用して、X.509 証明書をローカルコンピュータのアカウント内にある個人フォルダにインポートします。このスナップインを使用するには、次の Microsoft の記事を参照してください。
「プロパティー」ダイアログを表示して値を入力することで、この証明書にわかりやすい名前を指定します (この値は手順 4 で保存)。
前述の Microsoft の記事に従って、Internet Information Server (IIS) によって使用されるユーザーアカウントの証明書に対して読み取りアクセスができるよう適切な権限を設定します。次に例を示します。
.NET Fedlet の拡張メタデータファイル (sp-extended.xml) で、手順 2 で encryptionCertAlias 属性の値に指定したわかりやすい名前を指定します。次に例を示します。
<Attribute name="encryptionCertAlias"> <Value>MyFedlet</Value>
.NET Fedlet のサービスプロバイダのメタデータファイル (sp.xml ) で、暗号化鍵用の KeyDescriptor を追加します。
すでに使用した Microsoft 管理コンソールの証明書スナップインを使用して、KeyDescriptor XML ブロックに挿入する証明書の公開鍵を、Base64 エンコーディングでエクスポートします。この KeyDescriptor は、SPSSODescriptor 内の最初の子要素である必要があります。次に例を示します。
<KeyDescriptor use="encryption"> <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> <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"> <KeySize xmlns="http://www.w3.org/2001/04/xmlenc#">128</KeySize> </EncryptionMethod> </KeyDescriptor>
.NET アプリケーションに関連づけられたアプリケーションプールを再起動します。
この設定をテストするには、サンプルアプリケーションを使用します。また、設定したメタデータに適切な変更を加えて次の属性を設定することで、アイデンティティープロバイダとやりとりする要求を暗号化したり応答を復号化したりします。
表明: sp-extended.xml メタデータファイルの wantAssertionEncrypted 属性を true に設定して、アイデンティティープロバイダから送られてくる応答に含まれている EncryptedAssertion 要素を .NET Fedlet が復号化できるようにします。
属性: sp-extended.xml メタデータファイルの wantAssertionEncrypted 属性を true に設定して、アイデンティティープロバイダから送られてくる応答に含まれている EncryptedAttribute 要素を .NET Fedlet が復号化できるようにします。
NameID: idp-extended.xml メタデータファイルの wantNameIDEncrypted 属性を true に設定して、送信する要求の中にある NameID 要素を .NET Fedlet が暗号化できるようにします。sp-extended.xml で同じ属性を設定して、アイデンティティープロバイダから送られてくる応答の中の EncryptedID 要素を .NET Fedlet が復号化できるようにします。