Erstellen eines Identitätsanbieters (veraltet)
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 .
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.
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 /identityProviders
Anforderungsheader
| Name | Beschreibung |
|---|---|
| Authorization | Bearer {token}. Erforderlich. |
| Content-Type | application/json. Erforderlich. |
Anforderungstext
Geben Sie im Anforderungstext eine JSON-Darstellung des IdentityProvider- oder openIdConnectProvider-Objekts an (nur für Azure AD B2C-Objekt). 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 beim Registrieren der Anwendung beim Identitätsanbieter abgerufen wird. |
| clientSecret | Zeichenfolge | Der geheime Clientschlüssel für die Anwendung. Dies ist der geheime Clientschlüssel, der beim Registrieren der Anwendung beim Identitätsanbieter abgerufen wird. |
| name | Zeichenfolge | Der Anzeigename des Identitätsanbieters. |
| type | Zeichenfolge | Der Typ des Identitätsanbieters.
|
openIdConnectProvider-Objekt
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
| clientId | Zeichenfolge | Die Client-ID für die Anwendung. Dies ist die Client-ID, die beim Registrieren der Anwendung beim Identitätsanbieter abgerufen wird. |
| clientSecret | Zeichenfolge | Der geheime Clientschlüssel für die Anwendung. Dies ist der geheime Clientschlüssel, der beim Registrieren der Anwendung beim Identitätsanbieter abgerufen wird. |
| name | Zeichenfolge | Der Anzeigename des Identitätsanbieters. |
| type | Zeichenfolge | Der Typ des Identitätsanbieters. Der Wert muss OpenIdConnect . |
| claimsMapping | claimsMapping | Die userId eigenschaften sind im displayname claimsMapping-Objekt erforderlich. |
| metadataUrl | Zeichenfolge | Die URL für das Metadatendokument des Open Id Verbinden Identitätsanbieters. |
| responseMode | Zeichenfolge | Definiert die Methode, die verwendet werden soll, um die Daten vom benutzerdefinierten Identitätsanbieter zurück an Azure AD B2C zu senden. Die folgenden Antwortmodi können verwendet werden: form_post : Dieser Antwortmodus wird für optimale Sicherheit empfohlen. Die Antwort wird über die HTTP POST-Methode übertragen, wobei der Code oder token im Textkörper mithilfe des anwendungs-/x-www-form-url-codierten Formats codiert wird.query : Der Code oder token wird als Abfrageparameter zurückgegeben. |
| responseType | Zeichenfolge | Beschreibt, welche Art von Informationen im ersten Aufruf an die authorization_endpoint des benutzerdefinierten Identitätsanbieters zurückgesendet wird. Die folgenden Antworttypen können verwendet werden:code: Gemäß dem Autorisierungscodefluss 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 derzeit nicht von Azure AD B2C unterstützt.) |
| scope | String | Der Bereich definiert die Informationen und Berechtigungen, die Sie von Ihrem benutzerdefinierten Identitätsanbieter erfassen möchten. |
Antwort
Wenn die Methode erfolgreich ist, werden der Antwortcode und das 201 Created IdentityProvider- oder openIdConnectProvider-Objekt (nur für Azure AD B2C)-Objekt im Antworttext zurückgegeben. Wenn die Methode nicht erfolgreich ist, wird ein 4xx-Fehler mit bestimmten Details zurückgegeben.
Beispiele
Beispiel 1: Erstellen eines bestimmten Identitätsanbieters
Anforderung
Nachfolgend sehen Sie ein Beispiel der Anforderung.
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"
}
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
IdentityProvider identityProvider = new IdentityProvider();
identityProvider.name = "Login with Amazon";
identityProvider.type = "Amazon";
identityProvider.clientId = "56433757-cadd-4135-8431-2c9e3fd68ae8";
identityProvider.clientSecret = "000000000000";
graphClient.identityProviders()
.buildRequest()
.post(identityProvider);
Wichtig
Microsoft Graph SDKs verwenden standardmäßig die Version 1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Betaversion verfügbar sind. Ausführliche Informationen zum Zugreifen auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph-SDKs mit der Beta-API.
Ausführliche Informationen zum Hinzufügen des SDK zu Ihrem Projekt und zum Erstellen einer authProvider-Instanz finden Sie in der SDK-Dokumentation.
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.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
Nachfolgend sehen Sie ein Beispiel der Anforderung.
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"
}
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
OpenIdConnectProvider identityProvider = new OpenIdConnectProvider();
identityProvider.name = "Login with the Contoso identity provider";
identityProvider.type = "OpenIDConnect";
identityProvider.clientId = "56433757-cadd-4135-8431-2c9e3fd68ae8";
identityProvider.clientSecret = "12345";
ClaimsMapping claimsMapping = new ClaimsMapping();
claimsMapping.userId = "myUserId";
claimsMapping.givenName = "myGivenName";
claimsMapping.surname = "mySurname";
claimsMapping.email = "myEmail";
claimsMapping.displayName = "myDisplayName";
identityProvider.claimsMapping = claimsMapping;
identityProvider.domainHint = "mycustomoidc";
identityProvider.metadataUrl = "https://mycustomoidc.com/.well-known/openid-configuration";
identityProvider.responseMode = OpenIdConnectResponseMode.FORM_POST;
identityProvider.responseType = EnumSet.of(OpenIdConnectResponseTypes.CODE);
identityProvider.scope = "openid";
graphClient.identityProviders()
.buildRequest()
.post(identityProvider);
Wichtig
Microsoft Graph SDKs verwenden standardmäßig die Version 1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Betaversion verfügbar sind. Ausführliche Informationen zum Zugreifen auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph-SDKs mit der Beta-API.
Ausführliche Informationen zum Hinzufügen des SDK zu Ihrem Projekt und zum Erstellen einer authProvider-Instanz finden Sie in der SDK-Dokumentation.
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.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"
}
Feedback
Feedback senden und anzeigen für