Upsert federatedIdentityCredential

Namespace: microsoft.graph

Erstellen Sie ein neues federatedIdentityCredential-Objekt für eine Anwendung, sofern vorhanden, oder aktualisieren Sie die Eigenschaften eines vorhandenen federatedIdentityCredential-Objekts . Indem Sie eine Vertrauensstellung zwischen Ihrer Microsoft Entra Anwendungsregistrierung und dem Identitätsanbieter für Ihre Computeplattform konfigurieren, können Sie von dieser Plattform ausgestellte Token verwenden, um sich mit Microsoft Identity Platform zu authentifizieren und APIs im Microsoft-Ökosystem aufzurufen. Einer Anwendung können maximal 20 Objekte hinzugefügt werden.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Application.ReadWrite.All Nicht verfügbar.
Delegiert (persönliches Microsoft-Konto) Application.ReadWrite.All Nicht verfügbar.
App Application.ReadWrite.OwnedBy Application.ReadWrite.All

HTTP-Anforderung

Sie können die Anwendung entweder mit ihrer ID oder appId adressieren. id und appId werden in App-Registrierungen im Microsoft Entra Admin Center als Objekt-ID bzw. Anwendungs-ID (Client-ID) bezeichnet.

PATCH /applications/{id}/federatedIdentityCredentials(name='{name}')
PATCH /applications(appId='{appId}')/federatedIdentityCredentials(name='{name}')

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.
Prefer create-if-missing. Erforderlich für upsert-Verhalten, andernfalls wird die Anforderung als Aktualisierungsvorgang behandelt.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung des federatedIdentityCredential-Objekts an . In der folgenden Tabelle sind die Eigenschaften aufgeführt, die beim Erstellen von federatedIdentityCredential erforderlich sind. Beachten Sie, dass die Name-Eigenschaft als Teil der Anforderungs-URL erforderlich ist.

Eigenschaft Typ Beschreibung
Publikum Zeichenfolgenauflistung Die Zielgruppe, die im externen Token angezeigt werden kann. Dieses Feld ist obligatorisch und sollte für api://AzureADTokenExchange Microsoft Entra ID auf festgelegt werden. Es wird angegeben, was Microsoft Identity Platform im aud -Anspruch im eingehenden Token akzeptieren sollen. Dieser Wert stellt Microsoft Entra ID in Ihrem externen Identitätsanbieter dar und hat keinen festen Wert für alle Identitätsanbieter. Möglicherweise müssen Sie eine neue Anwendungsregistrierung in Ihrem Identitätsanbieter erstellen, um als Zielgruppe dieses Tokens zu dienen. Dieses Feld kann nur einen einzelnen Wert akzeptieren und darf maximal 600 Zeichen lang sein. Erforderlich.
Emittenten String Die URL des externen Identitätsanbieters und muss mit dem Ausstelleranspruch des ausgetauschten externen Tokens übereinstimmen. Die Kombination der Werte von Aussteller und Betreff muss in der App eindeutig sein. Es ist auf 600 Zeichen beschränkt. Erforderlich.
subject String Erforderlich. Der Bezeichner der externen Softwareworkload innerhalb des externen Identitätsanbieters. Wie der Zielgruppenwert hat er kein festes Format, da jeder Identitätsanbieter sein eigenes verwendet – manchmal eine GUID, manchmal einen durch Doppelpunkt getrennten Bezeichner, manchmal beliebige Zeichenfolgen. Der Wert muss hier mit dem Unteranspruch innerhalb des Tokens übereinstimmen, das Microsoft Entra ID angezeigt wird. Es ist auf 600 Zeichen beschränkt. Die Kombination aus Aussteller und Betreff muss in der App eindeutig sein.

Antwort

Wenn ein Anwendungsobjekt mit dem Namen nicht vorhanden ist, gibt diese Methode bei erfolgreicher Ausführung einen 201 Created Antwortcode und ein neues federatedIdentityCredential-Objekt im Antworttext zurück.

Wenn bereits ein Anwendungsobjekt mit dem Namen vorhanden ist, aktualisiert diese Methode das federatedIdentityCredential-Objekt und gibt einen 204 No Content Antwortcode zurück.

Beispiele

Beispiel 1: Erstellen einer neuen federatedIdentityCredential-Instanz, wenn sie nicht vorhanden ist

Im folgenden Beispiel wird eine federatedIdentityCredential erstellt, da federatedIdentityCredential mit dem angegebenen Namenswert nicht vorhanden ist.

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

PATCH https://graph.microsoft.com/v1.0/applications(uniqueName='app-65278')/federatedIdentityCredentials(name='fic01-app-65278')
Content-Type: application/json

{
    "issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
    "subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
    "audiences": [
        "api://AzureADTokenExchange"
    ]
}

Antwort

Das folgende Beispiel zeigt die Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bcd7c908-1c4d-4d48-93ee-ff38349a75c8')/federatedIdentityCredentials/$entity",
    "id": "d9b7bf1e-429e-4678-8132-9b00c9846cc4",
    "name": "testing02fic01-app-65278",
    "issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
    "subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
    "description": null,
    "audiences": [
        "api://AzureADTokenExchange"
    ]
}

Beispiel 2: Aktualisieren einer vorhandenen federatedIdentityCredential-Instanz

Im folgenden Beispiel wird federatedIdentityCredential aktualisiert, da eine federatedIdentityCredential mit dem angegebenen Namenswert vorhanden ist.

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

PATCH https://graph.microsoft.com/v1.0/applications(uniqueName='app-65278')/federatedIdentityCredentials(name='fic01-app-65278')
Content-Type: application/json
Prefer: create-if-missing

{
    "issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
    "subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
    "audiences": [
        "api://AzureADTokenExchange"
    ]
}

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 204 No Content