Espace de noms: microsoft.graph
Importante
Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Attention
Cette API de fournisseur d’identité est déconseillée et cessera de renvoyer des données après mars 2023. Veuillez utiliser la nouvelle API de fournisseur d’identité.
Mettre à jour les propriétés d’un objet identityProvider .
Cette API est disponible dans les déploiements cloud nationaux suivants.
| Service global |
Gouvernement américain L4 |
Gouvernement américain L5 (DOD) |
Chine exploitée par 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Autorisations
Choisissez l’autorisation ou les autorisations marquées comme étant les moins privilégiées pour cette API. Utilisez une ou plusieurs autorisations privilégiées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, voir Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez la référence des autorisations.
| Type d’autorisation |
Autorisations les moins privilégiées |
Autorisations à privilèges plus élevés |
| Déléguée (compte professionnel ou scolaire) |
IdentityProvider.ReadWrite.All |
Non disponible. |
| Déléguée (compte Microsoft personnel) |
Non prise en charge. |
Non prise en charge. |
| Application |
IdentityProvider.ReadWrite.All |
Non disponible. |
Importante
Pour l’accès délégué à l’aide de comptes professionnels ou scolaires, l’utilisateur connecté doit disposer d’un rôle Microsoft Entra pris en charge ou d’un rôle personnalisé qui accorde les autorisations requises pour cette opération. Le rôle le moins privilégié est pris en charge pour cette opération, car l’administrateur du fournisseur d’identités externe est pris en charge.
Requête HTTP
PATCH /identityProviders/{id}
Corps de la demande
Dans le corps de la demande, fournissez un objet JSON avec une ou plusieurs propriétés qui doivent être mises à jour pour un objet identityProvider ou openIdConnectProvider (uniquement pour Azure AD B2C).
objet identityProvider
| Propriété |
Type |
Description |
| clientId |
Chaîne |
ID client pour l’application. Il s’agit de l’ID client obtenu lors de l’inscription de l’application avec le fournisseur d’identité. |
| clientSecret |
Chaîne |
Clé secrète client pour l’application. Il s’agit de la clé secrète client obtenue lors de l’inscription de l’application avec le fournisseur d’identité. |
| name |
Chaîne |
Nom d’affichage du fournisseur d’identité. |
| type |
Chaîne |
Type de fournisseur d’identité.Pour le scénario B2B :- Google
- :Facebook
Pour le scénario B2C :Microsoft Google, Amazon- , LinkedIn
- Facebook GitHub
- , Twitter
- ,
- Weibo
- , QQ,
- WeChat, OpenIDConnect
|
objet openIdConnectProvider
| Propriété |
Type |
Description |
| clientId |
Chaîne |
ID client pour l’application. Il s’agit de l’ID client obtenu lors de l’inscription de l’application avec le fournisseur d’identité. |
| clientSecret |
Chaîne |
Clé secrète client pour l’application. Il s’agit de la clé secrète client obtenue lors de l’inscription de l’application avec le fournisseur d’identité. |
| name |
Chaîne |
Nom d’affichage du fournisseur d’identité. |
| type |
Chaîne |
Type de fournisseur d’identité. La valeur doit être OpenIdConnect. |
| claimsMappage |
claimsMappage |
Une fois que le fournisseur OIDC a renvoyé un jeton d’ID à Microsoft Entra ID, Microsoft Entra ID doit être en mesure de mapper les revendications du jeton reçu aux revendications que Microsoft Entra ID reconnaît et utilise. Ce type complexe capture ce mappage. |
| domainHint |
String |
L’indication de domaine permet de passer directement à la page de connexion du fournisseur d’identité spécifié au lieu de demander à l’utilisateur d’effectuer une sélection dans la liste des fournisseurs d’identité disponibles. |
| metadataUrl |
String |
URL du document de métadonnées du fournisseur d’identité OpenID Connect. |
| responseMode |
String |
Définit la méthode à utiliser pour renvoyer les données du fournisseur d’identité personnalisé à Azure AD B2C. Les modes de réponse suivants peuvent être utilisés :
-
form_post : Ce mode de réponse est recommandé pour une meilleure sécurité. La réponse est transmise via la méthode HTTP POST, le code ou le jeton étant codé dans le corps en utilisant le format application/x-www-form-urlencoded.
-
query : le code ou le jeton est renvoyé en tant que paramètre de requête. |
| responseType |
String |
Décrit le type d’informations renvoyées dans l’appel initial au authorization_endpoint du fournisseur d’identité personnalisée. Les types de réponses suivants peuvent être utilisés :
-
code: selon le flux de code d’autorisation, un code sera renvoyé à Azure AD B2C. Azure AD B2C appelle l’token_endpoint pour échanger le code contre le jeton.
-
id_token: un jeton d’ID est renvoyé à Azure AD B2C à partir du fournisseur d’identité personnalisé.
-
token: un jeton d’accès est renvoyé à Azure AD B2C à partir du fournisseur d’identité personnalisé. (Cette valeur n’est pas prise en charge par Azure AD B2C pour le moment) |
| étendue |
String |
L’étendue définit les informations et les autorisations que vous cherchez à obtenir auprès de votre fournisseur d’identité personnalisé. |
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 204 No Content. Si elle échoue, une erreur 4xx est renvoyée avec des détails spécifiques.
Exemples
Exemple 1 : mettre à jour un identityProvider spécifique
Demande
L’exemple suivant illustre une demande.
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)
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Exemple 2 : mettre à jour un openIDConnectProvider spécifique (uniquement pour Azure AD B2C)
Demande
L’exemple suivant illustre une demande.
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)
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content