El Fedlet de .NET puede cifrar las solicitudes XML salientes y descifrar las respuestas entrantes de los elementos de Id. de nombre, atributo y aserción.
Importe el certificado X.509 en la carpeta Personal de la cuenta de equipo local mediante el complemento de certificados de Microsoft Management Console. Para utilizar este complemento, consulte el siguiente artículo de Microsoft:
Especifique un nombre descriptivo para este certificado. Para ello, acceda al cuadro de diálogo Propiedades e introduzca un valor. (Guarde este valor para el paso 4).
Consulte los permisos adecuados para permitir el acceso de lectura al certificado para la cuenta de usuario utilizada por los Servicios de Internet Information Server (IIS), como se describe en el artículo de Microsoft. Por ejemplo:
En el archivo de metadatos ampliado del Fedlet de .NET (sp-extended.xml ), especifique el nombre descriptivo indicado en el paso 2 como valor del atributo encryptionCertAlias. Por ejemplo:
<Attribute name="encryptionCertAlias"> <Value>MyFedlet</Value>
En el archivo de metadatos del proveedor de servicios del Fedlet de .NET (sp.xml ), agregue KeyDescriptor en la clave de cifrado.
Utilice el complemento de certificados de la instancia de Microsoft Management Console utilizada anteriormente para exportar la clave pública del certificado con codificación Base64 para incluirla en el bloque XML de KeyDescriptor. Esta instancia de KeyDescriptor debe ser el primer elemento principal en SPSSODescriptor. Por ejemplo:
<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>
Reinicie el conjunto de aplicaciones asociado a la aplicación de .NET.
Para probar esta configuración, utilice la aplicación de muestra. Además, establezca los siguientes atributos para cifrar las solicitudes y descifrar las respuestas con el proveedor de identidades y los cambios adecuados efectuados en los metadatos configurados:
Aserción: establezca el atributo wantAssertionEncrypted del archivo de metadatos sp-extended.xml en true (verdadero) para que el Fedlet de .NET descifre el elemento EncryptedAssertion en las respuestas entrantes del proveedor de identidades.
Atributo: establezca el atributo wantAttributeEncrypted del archivo de metadatos sp-extended.xml en true (verdadero) para que el Fedlet de .NET descifre el elemento EncryptedAttribute en las respuestas entrantes del proveedor de identidades.
Id. de nombre: establezca el atributo wantNameIDEncrypted del archivo de metadatos idp-extended.xml en true (verdadero) para que el Fedlet de .NET cifre el elemento NameID en las solicitudes salientes. Establezca este mismo atributo en sp-extended.xml para que el Fedlet de .NET descifre el elemento EncryptedID en las respuestas entrantes del proveedor de identidades.