Gérer l’authentification des applicationsBehaviors

La propriété authenticationBehaviors de l’objet d’application vous permet de configurer les comportements de changement cassants liés à l’émission de jetons. Les applications peuvent adopter de nouveaux changements cassants en activant un comportement ou continuer à utiliser un comportement préexistant en le désactivant.

Vous pouvez configurer les comportements suivants :

Remarque

La propriété authenticationBehaviors de l’objet d’application n’est actuellement disponible que dans beta .

Lire le paramètre authenticationBehaviors pour une application

La propriété authenticationBehaviors est renvoyée uniquement sur $select les demandes.

Pour lire la propriété et les autres propriétés spécifiées de toutes les applications du client, exécutez l’exemple de demande suivant. La demande renvoie un 200 OK code de réponse et une représentation JSON de l’objet d’application qui affiche uniquement les propriétés sélectionnées.

GET https://graph.microsoft.com/beta/applications?$select=id,displayName,appId,authenticationBehaviors

Pour lire uniquement la propriété authenticationBehaviors pour une seule application, exécutez l’exemple de requête suivant.

GET https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors

Vous pouvez également utiliser la propriété appId comme suit :

GET https://graph.microsoft.com/beta/applications(appId='37bf1fd4-78b0-4fea-ac2d-6c82829e9365')/authenticationBehaviors

Contrôler l’application de la stratégie d’ouverture d’origine croisée

La propriété coopEnforcement détermine si les réponses d’authentification de Microsoft Entra pour une application incluent des en-têtes COOP (Cross-Origin-Opener-Policy) appliqués. COOP isole les fenêtres de navigateur de l’accès à l’ouverture inter-origines et aide à protéger les flux d’authentification basés sur le navigateur. Le service applique ce paramètre par application lorsque l’évaluation de remplacement COOP par application est disponible pour la demande.

Les applications qui utilisent l’authentification contextuelle doivent d’abord adopter un flux d’authentification compatible COOP. Si votre application utilise MSAL.js, migrez vers MSAL.js v5 ou ultérieure et configurez son pont de redirection pris en charge. Pour plus d’informations, consultez Migrer du navigateur MSAL v4 vers v5 et Configurer la page de pont de redirection dans le navigateur MSAL. Si un SDK ou une plateforme d’hébergement est propriétaire de la fenêtre contextuelle et du rappel, mettez à jour vers une version de plateforme compatible ou signalez le problème au propriétaire de cette plateforme.

La propriété prend en charge les valeurs suivantes :

  • true: appliquer explicitement le protocole COOP pour l’application.
  • false: supprimer explicitement l’application COOP en tant qu’exception temporaire de compatibilité.
  • null: Supprimez le remplacement explicite et utilisez la valeur par défaut du service.

Remarque

coopEnforcement est disponible uniquement dans le service global et n’est pas disponible dans les déploiements cloud nationaux.

Importante

Avant de définir coopEnforcement sur true, testez le flux d’authentification complet de l’application, y compris la fermeture de fenêtre contextuelle et la remise du résultat de l’authentification à l’application hôte. La définition de la propriété false sur est une exception de compatibilité temporaire pendant la correction de l’application ou de la plateforme propriétaire ; il ne s’agit pas d’une correction de sécurité. L’exception n’expire pas automatiquement. Réinitialisez la propriété ou null définissez-la sur true après correction.

Activer explicitement l’application COOP

Les exemples suivants activent explicitement l’application COOP pour une application.

Option 1

Ce modèle de spécification de la propriété dans l’URL de requête vous permet de mettre à jour uniquement la propriété spécifiée dans la requête.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "coopEnforcement": true
}

Option 2

Ce modèle de spécification de la propriété dans le corps de la demande vous permet de mettre à jour d’autres propriétés homologues dans la même demande.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "coopEnforcement": true
    }
}

En cas de succès, ces demandes renvoient une 204 No Content réponse.

Supprimer temporairement l’application COOP

Les exemples suivants suppriment explicitement l’application COOP pendant que le propriétaire de l’application corrige un flux d’authentification incompatible.

Option 1

Ce modèle de spécification de la propriété dans l’URL de requête vous permet de mettre à jour uniquement la propriété spécifiée dans la requête.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "coopEnforcement": false
}

Option 2

Ce modèle de spécification de la propriété dans le corps de la demande vous permet de mettre à jour d’autres propriétés homologues dans la même demande.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "coopEnforcement": false
    }
}

En cas de succès, ces demandes renvoient une 204 No Content réponse. Un en-tête de Report-Only COOP peut toujours être présent. Une fois l’application ou la plateforme propriétaire corrigée, définissez la propriété sur true pour une validation contrôlée ou réinitialisez-la pour null utiliser le service par défaut.

Restaurer le service par défaut

Les exemples suivants suppriment le remplacement explicite.

Option 1

Ce modèle de spécification de la propriété dans l’URL de requête vous permet de mettre à jour uniquement la propriété spécifiée dans la requête.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "coopEnforcement": null
}

Option 2

Ce modèle de spécification de la propriété dans le corps de la demande vous permet de mettre à jour d’autres propriétés homologues dans la même demande.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "coopEnforcement": null
    }
}

En cas de succès, ces demandes renvoient une 204 No Content réponse. Pour confirmer l’état de réinitialisation, lisez l’application avec $select=id,appId,authenticationBehaviors. Si l’application n’a pas d’autre comportement d’authentification explicite , authenticationBehaviors est null. Si un autre comportement d’authentification est configuré, l’objet complexe reste présent et coopEnforcement est omis.

Remarque

Dans la version bêta actuelle, si coopEnforcement est déjà absent, une autre demande de réinitialisation peut être renvoyée 400 Request_BadRequest. Lisez d’abord l’application et traitez une propriété omise comme déjà réinitialisée.

Empêcher l’émission de revendications par e-mail avec des propriétaires de domaine non vérifiés

Comme décrit dans l’avis de sécurité Microsoft Risque potentiel d’élévation des privilèges dans les applications Microsoft Entra, les applications ne doivent jamais utiliser la revendication d’e-mail à des fins d’autorisation. Si votre application utilise la revendication d’e-mail à des fins d’autorisation ou d’identification de l’utilisateur principal, elle est sujette à des attaques d’élévation de compte et de privilèges. Ce risque d’accès non autorisé est particulièrement identifié dans les scénarios suivants :

  • Lorsque l’attribut mail de l’objet utilisateur contient une adresse e-mail avec un propriétaire de domaine non vérifié
  • Pour les applications mutualisées où l’utilisateur d’un client peut élever ses privilèges pour accéder aux ressources d’un autre client en modifiant son attribut de messagerie

Aujourd’hui, le comportement par défaut consiste à supprimer les adresses e-mail avec des propriétaires de domaine non vérifiés dans les revendications, sauf pour les applications monolocataire et multi-locataire avec une activité de connexion antérieure avec des e-mails non vérifiés. Si votre application relève de l’une de ces exceptions et que vous souhaitez supprimer des adresses e-mail non vérifiées, définissez la propriété removeUnverifiedEmailClaim de authenticationBehaviors sur true comme indiqué dans les exemples suivants. La requête retourne un code de réponse 204 No Content .

Supprimer des revendications les adresses e-mail avec des propriétaires de domaine non vérifiés

Option 1

Ce modèle de spécification de la propriété dans l’URL de requête vous permet de mettre à jour uniquement la propriété spécifiée dans la requête.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "removeUnverifiedEmailClaim": true
}

Option 2

Ce modèle de spécification de la propriété dans le corps de la demande vous permet de mettre à jour d’autres propriétés homologues dans la même demande.

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "removeUnverifiedEmailClaim": true
    }
}

Accepter les adresses e-mail avec des propriétaires de domaine non vérifiés dans les revendications

Option 1

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "removeUnverifiedEmailClaim": false
}

Option 2

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "removeUnverifiedEmailClaim": false
    }
}

Rétablir le comportement par défaut

Option 1

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "removeUnverifiedEmailClaim": null
}

Option 2

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/
Content-Type: application/json

{
    "authenticationBehaviors": {
        "removeUnverifiedEmailClaim": null
    }
}

Autoriser l’accès étendu à Azure AD Graph jusqu’au 31 août 2025

Par défaut, les applications créées après le 31 août 2024 reçoivent une 403 Unauthorized erreur lors de la demande aux API Azure AD Graph, sauf si vous les configurez pour autoriser un accès étendu à Azure AD Graph. En outre, vous devez configurer les applications existantes créées avant le 31 août 2024 et effectuer des demandes aux API d’Azure AD Graph pour autoriser un accès étendu à Azure AD Graph d’ici le 1er février 2025. Cet accès étendu est disponible uniquement jusqu’au 30 juin 2025, date à laquelle Azure AD Graph est entièrement mis hors service. Après cette date, toutes les applications reçoivent une 403 Unauthorized erreur lors de la demande aux API Azure AD Graph, quelle que soit leur configuration d’accès étendu. Pour plus d’informations, consultez la mise à jour de juin 2024 sur le retrait de Azure AD API Graph.

La demande suivante montre comment mettre à jour une application pour activer l’accès étendu à Azure AD Graph. L’ID utilisé dans cet exemple est l’ID d’objet de l’application, et non l’ID de l’application. La requête retourne un code de réponse 204 No Content .

Option 1

PATCH https://graph.microsoft.com/beta/applications/5c142e6f-0bd3-4e58-b510-8a106704f44f/authenticationBehaviors
Content-Type: application/json

{
    "blockAzureADGraphAccess": false
}

Option 2

PATCH https://graph.microsoft.com/beta/applications/5c142e6f-0bd3-4e58-b510-8a106704f44f
Content-Type: application/json

{
    "authenticationBehaviors": {
        "blockAzureADGraphAccess": false
    }
}