Configurer le chiffrement des jetons SAML Microsoft Entra

Remarque

Le chiffrement de jeton est une fonctionnalité de Microsoft Entra ID P1 ou P2. Pour en savoir plus sur les éditions Microsoft Entra, les fonctionnalités et la tarification, consultez tarification Microsoft Entra.

Le chiffrement des jetons SAML permet d’utiliser des assertions SAML chiffrées avec une application qui le prend en charge. Quand il est configuré pour une application, Microsoft Entra ID chiffre les assertions SAML qu’il émet pour celle-ci à l’aide de la clé publique obtenue à partir d’un certificat stocké dans Microsoft Entra ID. L’application doit utiliser la clé privée correspondante pour déchiffrer le jeton avant que celui-ci ne puisse être utilisé comme preuve d’authentification pour l’utilisateur connecté.

Le chiffrement des assertions SAML entre Microsoft Entra ID et l’application fournit une garantie supplémentaire que le contenu du jeton ne peut pas être intercepté et que des données personnelles ou professionnelles ne peuvent pas être compromises.

Même sans le chiffrement des jetons, les jetons SAML Microsoft Entra ne sont jamais transmis en clair sur le réseau. Microsoft Entra ID exige que les échanges de demande/réponse de jeton s’effectuent via des canaux chiffrés HTTPS/TLS afin que les communications entre le fournisseur d’identité, le navigateur et l’application se déroulent sur des liaisons chiffrées. Réfléchissons à la valeur du chiffrement des jetons dans votre situation par rapport à la surcharge de gestion d’autres certificats.

Pour configurer le chiffrement des jetons, vous devez charger un fichier de certificat X.509 qui contient la clé publique dans l’objet d’application Microsoft Entra qui représente l’application. Pour obtenir le certificat X.509, vous pouvez le télécharger à partir de l’application elle-même ou l’obtenir auprès du fournisseur de l’application dans les cas où ce dernier fournit des clés de chiffrement. Dans les cas où l’application s’attend à ce que vous fournissiez une clé privée, il peut être créé à l’aide d’outils de chiffrement, la partie clé privée étant chargée dans le magasin de clés de l’application et le certificat de clé publique correspondant étant chargé dans Microsoft Entra ID.

Microsoft Entra ID utilise AES-256 pour chiffrer les données d’assertion SAML.

Prérequis

Pour configurer le chiffrement de jeton SAML, vous avez besoin de :

  • Un compte d’utilisateur Microsoft Entra. Si vous n’en avez pas encore, vous pouvez créer un compte gratuitement.
  • Un des rôles suivants : Administrateur général, Administrateur d’application cloud, Administrateur d’application ou propriétaire du principal de service.

Conseil

Les étapes décrites dans cet article peuvent varier légèrement en fonction du portail de départ.

Configurer le chiffrement de jetons SAML d’une application d’entreprise

Cette section explique comment configurer le chiffrement de jetons SAML d’application d’entreprise Applications qui ont été configurées dans le panneau Applications d’entreprise dans le centre d’administration de Microsoft Entra, à partir de la Galerie d’applications ou d’une application qui n’y figure pas. Pour les applications inscrites via l’expérience Inscriptions d’applications, suivez les instructions dans Configurer le chiffrement de jetons SAML d’une application inscrite.

Pour configurer le chiffrement de jetons SAML d’une application d’entreprise, suivez ces étapes :

  1. Obtenez un certificat de clé publique correspondant à une clé privée qui est configurée dans l’application.

    Créez une paire de clés asymétriques à utiliser pour le chiffrement. Par ailleurs, si l’application fournit une clé publique à utiliser pour le chiffrement, suivez les instructions de l’application pour télécharger le certificat X.509.

    La clé publique doit être stockée dans un fichier de certificat X.509 au format .cer. Vous pouvez copier le contenu du fichier de certificat dans un éditeur de texte et l’enregistrer en tant que fichier .cer. Le fichier de certificat doit contenir uniquement la clé publique et non la clé privée.

    Si l’application utilise une clé que vous créez pour votre instance, suivez les instructions fournies par votre application pour l’installation de la clé privée que l’application utilisera pour déchiffrer les jetons à partir de votre locataire Microsoft Entra.

  2. Ajoutez le certificat à la configuration de l’application dans Microsoft Entra ID.

Configurer le chiffrement des jetons dans le centre d’administration de Microsoft Entra

Vous pouvez ajouter le certificat public à la configuration de votre application dans le centre d’administration de Microsoft Entra.

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.

  2. Accédez à Identité>Applications>Applications d’entreprise>Toutes les applications.

  3. Entrez le nom de l’application dans la zone de recherche, puis sélectionnez l’application dans les résultats.

  4. Dans la page de l’application, sélectionnez Chiffrement des jetons.

    Screenshot shows how to select the Token encryption option in the Microsoft Entra admin center.

    Remarque

    L’option Chiffrement des jetons n’est disponible que pour les applications SAML configurées sur le panneau Applications d’entreprise du centre d’administration de Microsoft Entra, à partir de la Galerie d’applications ou d’une application qui n’y figure pas. Pour les autres applications, cette option de menu est désactivée.

  5. Sur la page Chiffrement des jetons, sélectionnez Importer un certificat pour importer le fichier .cer qui contient votre certificat public X.509.

    Screenshot shows how to import a certificate file using Microsoft Entra admin center.

  6. Une fois le certificat importé et la clé privée configurée pour une utilisation côté application, activez le chiffrement en sélectionnant les points de suspension (...) en regard de l’état de l’empreinte numérique, puis sélectionnez Activer le chiffrement des jetons dans les options du menu déroulant.

  7. Sélectionnez Oui pour confirmer l’activation du certificat de chiffrement de jeton.

  8. Vérifiez que les assertions SAML émises pour l’application sont chiffrées.

Désactiver le chiffrement des jetons dans le centre d’administration de Microsoft Entra

  1. Dans le centre d’administration de Microsoft Entra, accédez à Identité>Applications>Applications d’entreprise>Toutes les applications, puis sélectionnez l’application avec le chiffrement des jetons SAML activé.

  2. Dans la page de l’application, sélectionnez Chiffrement des jetons, recherchez le certificat, puis sélectionnez l’option ... pour afficher le menu déroulant.

  3. Sélectionnez Désactiver le chiffrement des jetons.

Configurer le chiffrement de jetons SAML d’une application inscrite

Cette section explique comment configurer le chiffrement de jetons SAML d’application inscrite Applications qui ont été configurées dans le panneau Inscriptions d’applications dans le centre d’administration de Microsoft Entra. Pour les applications d’entreprise, suivez les instructions dans Configurer le chiffrement de jetons SAML d’une application d’entreprise.

Les certificats de chiffrement sont stockés sur l’objet d’application dans Microsoft Entra ID avec une balise d’utilisation encrypt. Vous pouvez configurer plusieurs certificats de chiffrement. Celui qui est actif pour le chiffrement des jetons est identifié par l’attribut tokenEncryptionKeyID.

Vous avez besoin de l’ID d’objet de l’application pour configurer le chiffrement des jetons à l’aide de l’API Microsoft Graph ou de PowerShell. Vous pouvez trouver cette valeur programmatiquement ou en accédant à la page Propriétés de l’application dans le centre d’administration de Microsoft Entra et en notant la valeur ID objet.

Quand vous configurez une valeur keyCredential à l’aide de Graph, de PowerShell ou dans le manifeste d’application, vous devez générer un GUID à utiliser pour l’ID de la clé (keyId).

Pour configurer le chiffrement des jetons pour une inscription d’application, procédez comme suit :

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.

  2. Accédez à Identité>Applications>Inscriptions d’applications>Toutes les applications.

  3. Entrez le nom de l’application dans la zone de recherche, puis sélectionnez l’application dans les résultats.

  4. Dans la page de l’application, sélectionnez Manifeste pour modifier le manifeste d’application.

    L’exemple suivant illustre un manifeste d’application configuré avec deux certificats de chiffrement, le deuxième étant sélectionné comme celui étant actif à l’aide de tokenEnryptionKeyId.

    { 
      "id": "3cca40e2-367e-45a5-8440-ed94edd6cc35",
      "accessTokenAcceptedVersion": null,
      "allowPublicClient": false,
      "appId": "cb2df8fb-63c4-4c35-bba5-3d659dd81bf1",
      "appRoles": [],
      "oauth2AllowUrlPathMatching": false,
      "createdDateTime": "2017-12-15T02:10:56Z",
      "groupMembershipClaims": "SecurityGroup",
      "informationalUrls": { 
         "termsOfService": null, 
         "support": null, 
         "privacy": null, 
         "marketing": null 
      },
      "identifierUris": [ 
        "https://testapp"
      ],
      "keyCredentials": [ 
        { 
          "customKeyIdentifier": "Tog/O1Hv1LtdsbPU5nPphbMduD=", 
          "endDate": "2039-12-31T23:59:59Z", 
          "keyId": "8be4cb65-59d9-404a-a6f5-3d3fb4030351", 
          "startDate": "2018-10-25T21:42:18Z", 
          "type": "AsymmetricX509Cert", 
          "usage": "Encrypt", 
          "value": <Base64EncodedKeyFile> 
          "displayName": "CN=SAMLEncryptTest" 
        }, 
        {
          "customKeyIdentifier": "U5nPphbMduDmr3c9Q3p0msqp6eEI=",
          "endDate": "2039-12-31T23:59:59Z", 
          "keyId": "6b9c6e80-d251-43f3-9910-9f1f0be2e851",
          "startDate": "2018-10-25T21:42:18Z", 
          "type": "AsymmetricX509Cert", 
          "usage": "Encrypt", 
          "value": <Base64EncodedKeyFile> 
          "displayName": "CN=SAMLEncryptTest2" 
        } 
      ], 
      "knownClientApplications": [], 
      "logoUrl": null, 
      "logoutUrl": null, 
      "name": "Test SAML Application", 
      "oauth2AllowIdTokenImplicitFlow": true, 
      "oauth2AllowImplicitFlow": false, 
      "oauth2Permissions": [], 
      "oauth2RequirePostResponse": false, 
      "orgRestrictions": [], 
      "parentalControlSettings": { 
         "countriesBlockedForMinors": [], 
         "legalAgeGroupRule": "Allow" 
        }, 
      "passwordCredentials": [], 
      "preAuthorizedApplications": [], 
      "publisherDomain": null, 
      "replyUrlsWithType": [], 
      "requiredResourceAccess": [], 
      "samlMetadataUrl": null, 
      "signInUrl": "https://127.0.0.1:444/applications/default.aspx?metadata=customappsso|ISV9.1|primary|z" 
      "signInAudience": "AzureADMyOrg",
      "tags": [], 
      "tokenEncryptionKeyId": "6b9c6e80-d251-43f3-9910-9f1f0be2e851" 
    }  
    

Étapes suivantes