Freigeben über


Erstellen eines Identitätsanbieters (veraltet)

Namespace: microsoft.graph

Wichtig

Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.

Achtung

Diese Identitätsanbieter-API ist veraltet und wird nach März 2023 keine Daten mehr zurückgeben. Bitte verwenden Sie die neue Identitätsanbieter-API.

Erstellen Sie ein neues identityProvider-Objekt .

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) IdentityProvider.ReadWrite.All Nicht verfügbar.
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung IdentityProvider.ReadWrite.All Nicht verfügbar.

Das Geschäfts-, Schul- oder Unikonto muss mindestens der Rolle Administrator für externe IdentitätsanbieterMicrosoft Entra angehören.

HTTP-Anforderung

POST /identityProviders

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung des Objekts identityProvider oder openIdConnectProvider (nur für Azure AD B2C) an. Alle in der folgenden Tabelle aufgeführten Eigenschaften sind erforderlich.

identityProvider-Objekt

Eigenschaft Typ Beschreibung
clientId Zeichenfolge Die Client-ID für die Anwendung. Dies ist die Client-ID, die Sie beim Registrieren der Anwendung beim Identitätsanbieter erhalten.
clientSecret Zeichenfolge Der geheime Clientschlüssel für die Anwendung. Dies ist der geheime Clientschlüssel, den Sie beim Registrieren der Anwendung beim Identitätsanbieter erhalten.
name Zeichenfolge Der Anzeigename des Identitätsanbieters.
type Zeichenfolge Der Typ des Identitätsanbieters.
    Für B2B-Szenario:
  • Google
  • Facebook
    Für B2C-Szenario:
  • Microsoft
  • Google
  • Amazon
  • LinkedIn
  • Facebook
  • GitHub
  • Twitter
  • Weibo
  • QQ
  • WeChat
  • OpenIDConnect

openIdConnectProvider-Objekt

Eigenschaft Typ Beschreibung
clientId Zeichenfolge Die Client-ID für die Anwendung. Dies ist die Client-ID, die Sie beim Registrieren der Anwendung beim Identitätsanbieter erhalten.
clientSecret Zeichenfolge Der geheime Clientschlüssel für die Anwendung. Dies ist der geheime Clientschlüssel, den Sie beim Registrieren der Anwendung beim Identitätsanbieter erhalten.
name Zeichenfolge Der Anzeigename des Identitätsanbieters.
type Zeichenfolge Der Typ des Identitätsanbieters. Der Wert muss sein OpenIdConnect.
claimsMapping claimsMapping Die userId Eigenschaften und displayname sind im claimsMapping-Objekt erforderlich.
metadataUrl String Die URL für das Metadatendokument des OpenID Connect-Identitätsanbieters.
responseMode String Definiert die Methode, mit der die Daten vom benutzerdefinierten Identitätsanbieter an Azure AD B2C zurückgesendet werden sollen. Die folgenden Antwortmodi können verwendet werden:
  • form_post : Dieser Antwortmodus wird empfohlen, um die beste Sicherheit zu erzielen. Die Antwort wird über die HTTP POST-Methode übertragen, wobei der Code oder das Token im Text im Format application/x-www-form-urlencoded codiert wird.
  • query : Der Code oder das Token wird als Abfrageparameter zurückgegeben.
responseType String Beschreibt, welche Art von Informationen beim ersten Aufruf des authorization_endpoint des benutzerdefinierten Identitätsanbieters zurückgesendet werden. Die folgenden Antworttypen können verwendet werden:
  • code : Gemäß dem Autorisierungscodeflow wird ein Code an Azure AD B2C zurückgegeben. Azure AD B2C ruft die token_endpoint auf, um den Code gegen das Token auszutauschen.
  • id_token : Ein ID-Token wird vom benutzerdefinierten Identitätsanbieter an Azure AD B2C zurückgegeben.
  • token : Ein Zugriffstoken wird vom benutzerdefinierten Identitätsanbieter an Azure AD B2C zurückgegeben. (Dieser Wert wird von Azure AD B2C derzeit nicht unterstützt.)
Bereich String Bereich definiert die Informationen und Berechtigungen, die Sie von Ihrem benutzerdefinierten Identitätsanbieter sammeln möchten.

Antwort

Bei erfolgreicher Ausführung gibt die Methode einen Antwortcode und ein 201 CreatedidentityProvider - oder openIdConnectProvider-Objekt (nur für Azure AD B2C) 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 IdentityProviders

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

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

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

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.type": "microsoft.graph.identityProvider",
    "id": "Amazon-OAUTH",
    "name": "Login with Amazon",
    "type": "Amazon",
    "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
    "clientSecret": "*****"
}

Beispiel 2: Erstellen eines bestimmten openIDConnectProvider (nur für Azure AD B2C)

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

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

{
  "@odata.type": "microsoft.graph.openIdConnectProvider",
    "name": "Login with the Contoso identity provider",
    "type": "OpenIDConnect",
    "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

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.type": "microsoft.graph.openIdConnectProvider",
  "id": "OIDC-V1-MyTest-085a8a0c-58cb-4b6d-8e07-1328ea404e1a",
  "name": "Login with the Contoso identity provider",
  "type": "OpenIDConnect",
  "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"
}