Erstellen eines Identitätsanbieters

Namespace: microsoft.graph

Wichtig

APIs unter der /beta Version in Microsoft Graph können geändert werden. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in Version 1.0 verfügbar ist, verwenden Sie die Versionsauswahl .

Erstellen Sie eine Identitätsanbieterressource, die dem im Anforderungstext angegebenen Typ entspricht.

Unter den Von IdentityProviderBase abgeleiteten Anbietertypen können Sie derzeit eine socialIdentityProvider-Ressource in Azure AD erstellen. In Azure AD B2C kann dieser Vorgang derzeit eine socialIdentityProvider-, openIdConnectIdentityProvider-oder appleManagedIdentityProvider-Ressource erstellen.

Berechtigungen

Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie im Artikel zum Thema Berechtigungen.

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto) IdentityProvider.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt
Anwendung IdentityProvider.ReadWrite.All

Das Geschäfts-, Schul- oder Unikonto muss zu einer der folgenden Rollen gehören:

  • Globaler Administrator
  • Administrator für externe Identitätsanbieter

HTTP-Anforderung

POST /identity/identityProviders

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich.
Content-Type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung des socialIdentityProvider-Objekts in Azure AD an.

In Azure AD stellt B2C eine JSON-Darstellung von socialIdentityProvider, openIdConnectIdentityProvideroder einem appleManagedIdentityProvider-Objekt bereit.

Alle in den folgenden Tabellen aufgeführten Eigenschaften sind erforderlich.

socialIdentityProvider-Objekt

Eigenschaft Typ Beschreibung
clientId Zeichenfolge Der Client-Bezeichner für die Anwendung, der beim Registrieren der Anwendung beim Identitätsanbieter erhalten wird.
clientSecret Zeichenfolge Der geheime Clientschlüssel für die Anwendung, der beim Registrieren der Anwendung beim Identitätsanbieter erhalten wird. Dieser verfügt nur über Schreibzugriff. Ein Lesevorgang gibt **** zurück.
displayName Zeichenfolge Der Anzeigename des Identitätsanbieters.
identityProviderType Zeichenfolge Mögliche Werte für ein B2B-Szenario sind: Google, Facebook. Mögliche Werte für ein B2C-Szenario sind: Microsoft, Google, Amazon, LinkedIn, Facebook, GitHub, Twitter, Weibo, QQ, WeChat.

openIdConnectIdentityProvider-Objekt

Eigenschaft Typ Beschreibung
clientId String Die Client-ID für die Anwendung, die bei der Registrierung der Anwendung beim Identitätsanbieter abgerufen wird.
clientSecret String Der geheime Clientschlüssel für die Anwendung, der beim Registrieren der Anwendung beim Identitätsanbieter abgerufen wird. Der clientSecret weist eine Abhängigkeit von responseType auf.
  • Wenn responseType code ist, ist ein geheimer Schlüssel für den Authentifizierungscodeaustausch erforderlich.
  • Wenn responseType id_token der geheime Schlüssel ist, ist es nicht erforderlich, da es keinen Codeaustausch gibt – die id_token wird direkt von der Autorisierungsantwort zurückgegeben.
displayName Zeichenfolge Der Anzeigename des Identitätsanbieters.
domainHint String Der Domänenhinweis kann verwendet werden, um direkt zur Anmeldeseite des angegebenen Identitätsanbieters zu springen, anstatt den Benutzer in der Liste der verfügbaren Identitätsanbieter eine Auswahl treffen zu lassen.
claimsMapping claimsMapping Nachdem der OIDC-Anbieter ein ID-Token zurück an Azure AD gesendet hat, muss Azure AD in der Lage sein, die Ansprüche aus dem empfangenen Token den Ansprüchen zuzuordnen, die Azure AD erkennt und verwendet. Dieser komplexe Typ erfasst diese Zuordnung.
metadataUrl Zeichenfolge Die URL für das Metadatendokument des OpenID-Verbinden Identitätsanbieters. Jeder OpenID-Verbinden Identitätsanbieter beschreibt ein Metadatendokument, das die meisten informationen enthält, die für die Anmeldung erforderlich sind. Dazu gehören Informationen wie die zu verwendenden URLs und der Speicherort der öffentlichen Signaturschlüssel des Diensts. Das OpenID-Verbinden-Metadatendokument befindet sich immer an einem Endpunkt, der in .well-known/openid-configuration endet. Geben Sie die Metadaten-URL für den OpenID-Verbinden Identitätsanbieter an, den Sie hinzufügen.
responseMode String Der Antwortmodus definiert die Methode, die zum Senden von Daten vom benutzerdefinierten Identitätsanbieter an Azure AD B2C verwendet wird. Mögliche Werte: form_post , query .
responseType Zeichenfolge Der Antworttyp beschreibt den Typ der Informationen, die im ersten Aufruf an die authorization_endpoint des benutzerdefinierten Identitätsanbieters zurückgesendet wurden. Mögliche Werte: code , id_token , token .
scope String Der Bereich definiert die Informationen und Berechtigungen, die Sie von Ihrem benutzerdefinierten Identitätsanbieter erfassen möchten.

appleIdentityProvider-Objekt

Eigenschaft Typ Beschreibung
displayName Zeichenfolge Der Anzeigename des Identitätsanbieters.
developerId Zeichenfolge Der Apple-Entwicklerbezeichner.
ServiceID Zeichenfolge Der Apple-Dienstbezeichner.
keyId Zeichenfolge Der Apple-Schlüsselbezeichner.
certificateData Zeichenfolge Die Zertifikatsdaten, die eine lange Textfolge aus dem Zertifikat sind, können NULL sein.

Antwort

Wenn die Methode erfolgreich ist, werden der 201 Created Antwortcode und eine JSON-Darstellung eines socialIdentityProvider-Objekts im Antworttext für einen Azure AD Mandanten zurückgegeben.

Bei einem Azure AD B2C-Mandanten gibt diese Methode einen 201 Created Antwortcode und eine JSON-Darstellung eines socialIdentityProvider-, openIdConnectIdentityProvider-oder appleManagedIdentityProvider-Objekts im Antworttext zurück.

Wenn die Methode nicht erfolgreich ist, wird ein 4xx-Fehler mit bestimmten Details zurückgegeben.

Beispiele

Beispiel 1: Erstellen eines bestimmten Identitätsanbieters für soziale Netzwerke (Azure AD und Azure AD B2C)

Anforderung

Nachfolgend sehen Sie ein Beispiel der Anforderung.

POST https://graph.microsoft.com/beta/identity/identityProviders
Content-type: application/json

{
  "@odata.type": "microsoft.graph.socialIdentityProvider",
  "displayName": "Login with Amazon",
  "identityProviderType": "Amazon",
  "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
  "clientSecret": "000000000000"
}

Antwort

Nachfolgend sehen Sie ein Beispiel der Antwort.

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

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

{
    "@odata.type": "microsoft.graph.socialIdentityProvider",
    "id": "Amazon-OAUTH",
    "displayName": "Login with Amazon",
    "identityProviderType": "Amazon",
    "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
    "clientSecret": "000000000000"
}

Beispiel 2: Erstellen eines bestimmten OpenID-Verbinden Identitätsanbieters (nur für Azure AD B2C)

Anforderung

Nachfolgend sehen Sie ein Beispiel der Anforderung.

POST https://graph.microsoft.com/beta/identity/identityProviders
Content-type: application/json

{
  "@odata.type": "microsoft.graph.openIdConnectIdentityProvider",
    "displayName": "Login with the Contoso identity provider",
    "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
    "clientSecret": "12345",
    "claimsMapping": {
        "userId": "myUserId",
        "givenName": "myGivenName",
        "surname": "mySurname",
        "email": "myEmail",
        "displayName": "myDisplayName"
    },
    "domainHint": "mycustomoidc",
    "metadataUrl": "https://mycustomoidc.com/.well-known/openid-configuration",
    "responseMode": "form_post",
    "responseType": "code",
    "scope": "openid"
}

Antwort

Nachfolgend sehen Sie ein Beispiel der Antwort.

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

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

{
  "@odata.type": "microsoft.graph.openIdConnectIdentityProvider",
  "id": "OIDC-V1-MyTest-085a8a0c-58cb-4b6d-8e07-1328ea404e1a",
  "displayName": "Login with the Contoso identity provider",
  "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
  "clientSecret": "12345",
  "claimsMapping": {
      "userId": "myUserId",
      "givenName": "myGivenName",
      "surname": "mySurname",
      "email": "myEmail",
      "displayName": "myDisplayName"
  },
  "domainHint": "mycustomoidc",
  "metadataUrl": "https://mycustomoidc.com/.well-known/openid-configuration",
  "responseMode": "form_post",
  "responseType": "code",
  "scope": "openid"
}

Beispiel 3: Ruft den Apple-Identitätsanbieter ab (nur für Azure AD B2C)

Anforderung

Nachfolgend sehen Sie ein Beispiel der Anforderung.

POST https://graph.microsoft.com/beta/identity/identityProviders
Content-type: application/json

{
  "@odata.type": "microsoft.graph.appleManagedIdentityProvider",
  "displayName": "Sign in with Apple",
  "developerId": "UBF8T346G9",
  "serviceId": "com.microsoft.rts.b2c.test.client",
  "keyId": "99P6D879C4",
  "certificateData": "******"
}

Antwort

Nachfolgend sehen Sie ein Beispiel der Antwort.

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

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

{
  "@odata.type": "microsoft.graph.appleManagedIdentityProvider",
  "id": "Apple-Managed-OIDC",
  "displayName": "Sign in with Apple",
  "developerId": "UBF8T346G9",
  "serviceId": "com.microsoft.rts.b2c.test.client",
  "keyId": "99P6D879C4",
  "certificateData": "******"
}