Sécurisez les jetons SAML au niveau des messages en mettant en oeuvre la signature des assertions.
Avant de commencer
Avant de configurer la signature des jetons SAML, vous devez configurer les ensembles de règles et le liaisons SAML pour pouvoir créer des jetons SAML capables de prendre en charge l'authentification, la protection de l'intégrité étant assurée au niveau des messages. Pour plus d'informations, voir la rubrique relative à la sécurisation des messages à l'aide de SAML. Par ailleurs, les liaisons SAML associées doivent être spécifiques à une application, et non générales. L'algorithme de transformation utilisé pour la signature des assertions SAML diffère de celui utilisé pour la signature des autres parties du message, contrairement aux liaisons générales dans lesquelles un algorithme unique est utilisé.
Pourquoi et quand exécuter cette tâche
Cette tâche concerne spécifiquement la procédure de signature numérique d'un jeton SAML. Elle ne traite aucune des exigences de la norme OASIS de profil de jeton SAML pour les jetons SAML sender-vouches ou SAML bearer concernant les parties de message à signer. Dans le cadre de la signature des assertions SAML, le bloc d'en-tête <wsse:Security> d'un message SOAP doit inclure un élément <wsse:SecurityTokenReference>. L'élément SecurityTokenReference (STR) est référencé par la signature du message à l'aide d'un élément <ds:Reference>. La référence du jeton de sécurité doit comporter un élément <wsse:KeyIdentifier> avec la valeur http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLID ou http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID comme valeur de ValueType, indiquant l'identificateur de l'assertion référencée. L'élément <ds:Reference> doit inclure l'URI de l'algorithme STR-transform, http://docs.oasis-open.org/wss/2004/01/oasis-200401-wsssoap-message-security-1.0#STR-Transform.
L'utilisation de STR-transform garantit la signature de l'assertion SAML proprement dite, et non celle de l'élément <wsse:SecurityTokenReference>.
Suivez les étapes de configuration ci-dessous pour mettre en oeuvre la signature des jetons SAML au niveau des messages.
Eviter les incidents: L'utilisation d'un gestionnaire d'appel d'attributs SAML est le seul moyen
d'ajouter des attributs personnalisés à un jeton SAML lors de la création initiale. Vous pouvez ajouter des attributs à votre objet SAMLToken
à l'aide de la méthode SAMLToken.addAttribute, cette dernière supprimera la signature numérique
sur le jeton si elle existe. En outre, elle ne peut pas être utilisée avec
des jetons SAML chiffrés ou des attributs chiffrés.
gotcha