Verwalten der AnwendungsauthentifizierungVerhalten

Mit der authenticationBehaviors-Eigenschaft des Anwendungsobjekts können Sie Breaking Change-Verhalten im Zusammenhang mit der Token-Ausgabe konfigurieren. Anwendungen können neue wichtige Änderungen übernehmen, indem sie ein Verhalten aktivieren, oder bereits vorhandenes Verhalten weiterhin verwenden, indem sie es deaktivieren.

Sie können die folgenden Verhaltensweisen konfigurieren:

Hinweis

Die authenticationBehaviors-Eigenschaft des Anwendungsobjekts ist derzeit nur in beta verfügbar.

Lesen der authenticationBehaviors-Einstellung für eine Anwendung

Die authenticationBehaviors-Eigenschaft wird nur bei $select Anforderungen zurückgegeben.

Führen Sie die folgende Beispielanforderung aus, um die Eigenschaft und andere angegebene Eigenschaften aller Apps im Mandanten zu lesen. Die Anforderung gibt einen 200 OK Antwortcode und eine JSON-Darstellung des Anwendungsobjekts zurück, die nur die ausgewählten Eigenschaften anzeigt.

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

Um nur die authenticationBehaviors-Eigenschaft für eine einzelne App zu lesen, führen Sie die folgende Beispielanforderung aus.

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

Sie können die appId-Eigenschaft auch wie folgt verwenden:

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

Steuern Sie die Erzwingung der Cross-Origin-Opener-Policy

Die coopEnforcement-Eigenschaft steuert, ob Microsoft Entra-Authentifizierungsantworten für eine Anwendung erzwungene COOP-Header (Cross-Origin-Opener-Policy) enthalten. COOP isoliert Browserfenster vom ursprungsübergreifenden Öffnungszugriff und schützt browserbasierte Authentifizierungsflüsse. Der Dienst wendet diese Einstellung pro App an, wenn die Auswertung per App-COOP-Außerkraftsetzung für die Anforderung verfügbar ist.

Anwendungen, die die Popupauthentifizierung verwenden, sollten zunächst einen COOP-kompatiblen Authentifizierungsablauf übernehmen. Wenn Ihre Anwendung MSAL.js verwendet, migrieren Sie zu MSAL.js v5 oder höher und konfigurieren Sie die unterstützte Umleitungsbrücke. Weitere Informationen finden Sie unter Migrieren von MSAL-Browser v4 zu v5 und Einrichten der Umleitungsbrückenseite im MSAL-Browser. Wenn ein SDK oder eine Hostingplattform Besitzer des Popups und des Rückrufs ist, aktualisieren Sie auf eine kompatible Plattformversion oder melden Sie das Problem dem Eigentümer dieser Plattform.

Die Eigenschaft unterstützt die folgenden Werte:

  • true: COOP für die Anwendung explizit erzwingen.
  • false: COOP-Erzwingung als temporäre Kompatibilitätsausnahme explizit unterdrücken.
  • null: Entfernen Sie die explizite Außerkraftsetzung und verwenden Sie den Dienststandard.

Hinweis

coopEnforcement ist nur im globalen Dienst und nicht in nationalen Cloudbereitstellungen verfügbar.

Wichtig

Bevor Sie coopEnforcement auf truefestlegen, testen Sie den vollständigen Authentifizierungsablauf der Anwendung, einschließlich des Schließens des Popups und der Übermittlung des Authentifizierungsergebnisses an die Hostanwendung. Das Festlegen der false Eigenschaft auf ist eine temporäre Kompatibilitätsausnahme, während die Anwendung oder die besitzende Plattform behandelt wird; es handelt sich nicht um eine Sicherheitskorrektur. Die Ausnahme läuft nicht automatisch ab. Setzen Sie die Eigenschaft auf null oder legen Sie sie auf nach der Wiederherstellung fest true .

COOP-Erzwingung explizit aktivieren

In den folgenden Beispielen wird die COOP-Erzwingung für eine Anwendung explizit aktiviert.

Option 1

Mit diesem Muster zum Angeben der Eigenschaft in der Anforderungs-URL können Sie nur die in der Anforderung angegebene Eigenschaft aktualisieren.

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

{
    "coopEnforcement": true
}

Option 2

Mit diesem Muster zum Angeben der Eigenschaft im Anforderungstext können Sie andere Peereigenschaften in derselben Anforderung aktualisieren.

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

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

Bei erfolgreicher Ausführung geben diese Anforderungen eine 204 No Content Antwort zurück.

Vorübergehendes Unterdrücken der COOP-Erzwingung

In den folgenden Beispielen wird die COOP-Erzwingung explizit unterdrückt, während der Anwendungsbesitzer einen inkompatiblen Authentifizierungsablauf korrigiert.

Option 1

Mit diesem Muster zum Angeben der Eigenschaft in der Anforderungs-URL können Sie nur die in der Anforderung angegebene Eigenschaft aktualisieren.

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

{
    "coopEnforcement": false
}

Option 2

Mit diesem Muster zum Angeben der Eigenschaft im Anforderungstext können Sie andere Peereigenschaften in derselben Anforderung aktualisieren.

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

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

Bei erfolgreicher Ausführung geben diese Anforderungen eine 204 No Content Antwort zurück. Möglicherweise ist noch ein COOP-Report-Only-Header vorhanden. Nachdem die Anwendung oder besitzende Plattform korrigiert wurde, setzen Sie die Eigenschaft auf true für eine kontrollierte Überprüfung, oder setzen Sie sie zurück, um null den Dienststandard zu verwenden.

Wiederherstellen der Standardeinstellungen für den Dienst

In den folgenden Beispielen wird die explizite Außerkraftsetzung entfernt.

Option 1

Mit diesem Muster zum Angeben der Eigenschaft in der Anforderungs-URL können Sie nur die in der Anforderung angegebene Eigenschaft aktualisieren.

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

{
    "coopEnforcement": null
}

Option 2

Mit diesem Muster zum Angeben der Eigenschaft im Anforderungstext können Sie andere Peereigenschaften in derselben Anforderung aktualisieren.

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

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

Bei erfolgreicher Ausführung geben diese Anforderungen eine 204 No Content Antwort zurück. Um den Zurücksetzungsstatus zu bestätigen, lesen Sie die Anwendung mit $select=id,appId,authenticationBehaviors. Wenn die Anwendung kein anderes explizites Authentifizierungsverhalten aufweist, ist authenticationBehaviors .null Wenn ein anderes Authentifizierungsverhalten konfiguriert wird, bleibt das komplexe Objekt vorhanden und coopEnforcement wird weggelassen.

Hinweis

Wenn coopEnforcement in der aktuellen Beta bereits fehlt, kann eine weitere Zurücksetzungsanforderung zurückkehren 400 Request_BadRequest. Lesen Sie zuerst die Anwendung, und behandeln Sie eine ausgelassene Eigenschaft als bereits zurückgesetzt.

Verhindern Sie die Ausstellung von E-Mail-Ansprüchen mit nicht verifizierten Domänenbesitzern

Wie in der Microsoft-Sicherheitsempfehlung Potential Risk of Privilege Escalation in Microsoft Entra Applications beschrieben, sollten Apps niemals den E-Mail-Anspruch für Autorisierungszwecke verwenden. Wenn Ihre Anwendung den E-Mail-Anspruch zur Autorisierung oder primären Benutzeridentifikation verwendet, ist sie Angriffen zur Ausweitung von Konten und Berechtigungen ausgesetzt. Dieses Risiko des nicht autorisierten Zugriffs wird insbesondere in den folgenden Szenarien identifiziert:

  • Wenn das mail-Attribut des Benutzerobjekts eine E-Mail-Adresse mit einem nicht bestätigten Domänenbesitzer enthält
  • Für mehrinstanzenfähige Apps, bei denen ein Benutzer eines Mandanten seine Berechtigungen für den Zugriff auf Ressourcen eines anderen Mandanten durch Änderung seines E-Mail-Attributs erweitern könnte

Heute besteht das Standardverhalten darin, E-Mail-Adressen mit nicht überprüften Domänenbesitzern in Ansprüchen zu entfernen, mit Ausnahme von Einzelmandanten-Apps und mehrinstanzenfähigen Apps mit vorheriger Anmeldeaktivität mit nicht überprüften E-Mails. Wenn Ihre App unter eine dieser Ausnahmen fällt und Sie nicht überprüfte E-Mail-Adressen entfernen möchten, legen Sie die removeUnverifiedEmailClaim-Eigenschaft von authenticationBehaviors wie in den folgenden Beispielen gezeigt fest true . Die Anforderung gibt einen 204 No Content Antwortcode zurück.

Entfernen von E-Mail-Adressen mit nicht bestätigten Domänenbesitzern aus Ansprüchen

Option 1

Mit diesem Muster zum Angeben der Eigenschaft in der Anforderungs-URL können Sie nur die in der Anforderung angegebene Eigenschaft aktualisieren.

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

{
    "removeUnverifiedEmailClaim": true
}

Option 2

Mit diesem Muster zum Angeben der Eigenschaft im Anforderungstext können Sie andere Peereigenschaften in derselben Anforderung aktualisieren.

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

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

Akzeptieren von E-Mail-Adressen mit nicht bestätigten Domäneninhabern in Ansprüchen

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
    }
}

Wiederherstellen des Standardverhaltens

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
    }
}

Erweiterten Zugriff auf Azure AD Graph bis zum 31. August 2025 zulassen

Standardmäßig erhalten Anwendungen, die nach dem 31. August 2024 erstellt wurden, eine 403 Unauthorized Fehlermeldung, wenn sie Anforderungen an Azure AD Graph-APIs stellen, es sei denn, Sie konfigurieren sie so, dass ein erweiterter Azure AD Graph-Zugriff zulässig ist. Darüber hinaus müssen Sie vorhandene Apps konfigurieren, die vor dem 31. August 2024 erstellt wurden, und Anforderungen an Azure AD Graph-APIs stellen, um einen erweiterten Azure AD Graph-Zugriff bis zum 1. Februar 2025 zu ermöglichen. Dieser erweiterte Zugriff ist nur bis zum 30. Juni 2025 verfügbar, wenn Azure AD Graph vollständig eingestellt wird. Nach diesem Datum erhalten alle Apps eine 403 Unauthorized Fehlermeldung, wenn sie Anforderungen an Azure AD Graph-APIs stellen, unabhängig von ihrer Konfiguration des erweiterten Zugriffs. Weitere Informationen finden Sie unter Update vom Juni 2024 zur Einstellung der Azure AD Graph-API.

Die folgende Anforderung zeigt, wie Sie eine App aktualisieren, um erweiterten Zugriff auf Azure AD Graph zu ermöglichen. Die in diesem Beispiel verwendete ID ist die Objekt-ID der Anwendung, nicht die Anwendungs-ID. Die Anforderung gibt einen 204 No Content Antwortcode zurück.

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
    }
}