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.
Aktualisieren sie die Eigenschaften eines identityProvider-Objekts .
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
| Weltweiter Service |
US Government L4 |
US Government L5 (DOD) |
China, betrieben von 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Berechtigungen
Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. 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 |
| Application |
IdentityProvider.ReadWrite.All |
Nicht verfügbar. |
Wichtig
In delegierten Szenarien mit Geschäfts-, Schul- oder Unikonten muss dem angemeldeten Benutzer eine unterstützte Microsoft Entra Rolle oder eine benutzerdefinierte Rolle mit einer unterstützten Rollenberechtigung zugewiesen werden.
Der Externe Identitätsanbieteradministrator ist die Rolle mit den geringsten Berechtigungen, die für diesen Vorgang unterstützt wird.
HTTP-Anforderung
PATCH /identityProviders/{id}
Anforderungstext
Geben Sie im Anforderungstext ein JSON-Objekt mit mindestens einer Eigenschaft an, die für ein identityProvider- oder openIdConnectProvider-Objekt (nur für Azure AD B2C) aktualisiert werden muss.
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 |
Nachdem der OIDC-Anbieter ein ID-Token zurück an Microsoft Entra ID gesendet hat, muss Microsoft Entra ID in der Lage sein, die Ansprüche aus dem empfangenen Token den Ansprüchen zuzuordnen, die Microsoft Entra ID erkennt und verwendet. Dieser komplexe Typ erfasst diese Zuordnung. |
| domainHint |
Zeichenfolge |
Der Domänenhinweis kann verwendet werden, um direkt zur Anmeldeseite des angegebenen Identitätsanbieters zu springen, anstatt dass der Benutzer eine Auswahl in der Liste der verfügbaren Identitätsanbieter trifft. |
| metadataUrl |
Zeichenfolge |
Die URL für das Metadatendokument des OpenID Connect-Identitätsanbieters. |
| responseMode |
Zeichenfolge |
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 |
Zeichenfolge |
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 |
Zeichenfolge |
Bereich definiert die Informationen und Berechtigungen, die Sie von Ihrem benutzerdefinierten Identitätsanbieter sammeln möchten. |
Antwort
Wenn die Methode erfolgreich verläuft, wird der Antwortcode 204 No Content zurückgegeben. Wenn die Methode nicht erfolgreich ist, wird ein 4xx-Fehler mit bestimmten Details zurückgegeben.
Beispiele
Beispiel 1: Aktualisieren eines bestimmten IdentityProviders
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
PATCH https://graph.microsoft.com/beta/identityProviders/Amazon-OAuth
Content-type: application/json
{
"clientSecret": "1111111111111"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new IdentityProvider
{
ClientSecret = "1111111111111",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.IdentityProviders["{identityProvider-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewIdentityProvider()
clientSecret := "1111111111111"
requestBody.SetClientSecret(&clientSecret)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
identityProviders, err := graphClient.IdentityProviders().ByIdentityProviderId("identityProvider-id").Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
IdentityProvider identityProvider = new IdentityProvider();
identityProvider.setClientSecret("1111111111111");
IdentityProvider result = graphClient.identityProviders().byIdentityProviderId("{identityProvider-id}").patch(identityProvider);
const options = {
authProvider,
};
const client = Client.init(options);
const identityProvider = {
clientSecret: '1111111111111'
};
await client.api('/identityProviders/Amazon-OAuth')
.version('beta')
.update(identityProvider);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\IdentityProvider;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new IdentityProvider();
$requestBody->setClientSecret('1111111111111');
$result = $graphServiceClient->identityProviders()->byIdentityProviderId('identityProvider-id')->patch($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.SignIns
$params = @{
clientSecret = "1111111111111"
}
Update-MgBetaIdentityProvider -IdentityProviderId $identityProviderId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.identity_provider import IdentityProvider
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = IdentityProvider(
client_secret = "1111111111111",
)
result = await graph_client.identity_providers.by_identity_provider_id('identityProvider-id').patch(request_body)
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 204 No Content
Beispiel 2: Aktualisieren eines bestimmten openIDConnectProvider (nur für Azure AD B2C)
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
PATCH https://graph.microsoft.com/beta/identityProviders/OIDC-V1-MyTest-085a8a0c-58cb-4b6d-8e07-1328ea404e1a
Content-type: application/json
{
"responseType": "id_token"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new IdentityProvider
{
AdditionalData = new Dictionary<string, object>
{
{
"responseType" , "id_token"
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.IdentityProviders["{identityProvider-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewIdentityProvider()
additionalData := map[string]interface{}{
"responseType" : "id_token",
}
requestBody.SetAdditionalData(additionalData)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
identityProviders, err := graphClient.IdentityProviders().ByIdentityProviderId("identityProvider-id").Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
IdentityProvider identityProvider = new IdentityProvider();
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("responseType", "id_token");
identityProvider.setAdditionalData(additionalData);
IdentityProvider result = graphClient.identityProviders().byIdentityProviderId("{identityProvider-id}").patch(identityProvider);
const options = {
authProvider,
};
const client = Client.init(options);
const identityProvider = {
responseType: 'id_token'
};
await client.api('/identityProviders/OIDC-V1-MyTest-085a8a0c-58cb-4b6d-8e07-1328ea404e1a')
.version('beta')
.update(identityProvider);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\IdentityProvider;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new IdentityProvider();
$additionalData = [
'responseType' => 'id_token',
];
$requestBody->setAdditionalData($additionalData);
$result = $graphServiceClient->identityProviders()->byIdentityProviderId('identityProvider-id')->patch($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.SignIns
$params = @{
responseType = "id_token"
}
Update-MgBetaIdentityProvider -IdentityProviderId $identityProviderId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.identity_provider import IdentityProvider
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = IdentityProvider(
additional_data = {
"response_type" : "id_token",
}
)
result = await graph_client.identity_providers.by_identity_provider_id('identityProvider-id').patch(request_body)
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 204 No Content