创建 identityProvider

命名空间:microsoft.graph

创建请求正文中指定的类型的标识提供者对象。

在派生自 identityProviderBase 的提供程序类型中,当前可以在 Microsoft Entra ID 中创建 socialIdentityProvider 资源。 在 Azure AD B2C 中,此操作当前可以创建 socialIdentityProviderappleManagedIdentityProvider 资源。

此 API 可用于以下国家级云部署

全局服务 美国政府 L4 美国政府 L5 (DOD) 由世纪互联运营的中国

权限

为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考

权限类型 最低特权权限 更高特权权限
委派(工作或学校帐户) IdentityProvider.ReadWrite.All 不可用。
委派(个人 Microsoft 帐户) 不支持。 不支持。
应用程序 IdentityProvider.ReadWrite.All 不可用。

重要

在具有工作或学校帐户的委托方案中,必须为登录用户分配受支持的Microsoft Entra角色或具有支持的角色权限的自定义角色。 外部标识提供者管理员 是此操作支持的最低特权角色。

HTTP 请求

POST /identity/identityProviders

请求标头

名称 说明
Authorization 持有者 {token}。 必填。 详细了解 身份验证和授权
Content-Type application/json. 必需。

请求正文

在请求正文中,在 Microsoft Entra ID 中提供 socialIdentityProvider 对象的 JSON 表示形式。

在 Azure AD 中,B2C 提供 socialIdentityProviderappleManagedIdentityProvider 对象的 JSON 表示形式。

socialIdentityProvider 对象

属性 类型 说明
clientId 字符串 向标识提供程序注册应用程序时,获取应用程序的客户端标识符。
clientSecret 字符串 向标识提供程序注册时获取的应用程序的客户端密码。 这是只读的。 读取操作返回 ****
displayName 字符串 标识提供程序的显示名称。
identityProviderType String 对于 B2B 方案,可能的值为: GoogleFacebook。 对于 B2C 方案,可能的值: MicrosoftGoogleAmazonLinkedInFacebookGitHubTwitterWeiboQQWeChat
范围 String 作用域定义要从自定义标识提供者收集的信息和权限。

appleIdentityProvider 对象

属性 类型 说明
displayName 字符串 标识提供程序的显示名称。
developerId String Apple 开发人员标识符。
服务 Id String Apple 服务标识符。
keyId String Apple 密钥标识符。
certificateData String 证书中长文本字符串的证书数据可能是 null。

响应

如果成功,此方法在201 CreatedMicrosoft Entra租户的响应正文中返回一个响应代码和 socialIdentityProvider 对象的 JSON 表示形式。

对于 Azure AD B2C 租户,此方法在响应正文中返回 201 CreatedsocialIdentityProviderappleManagedIdentityProvider 对象的响应代码和 JSON 表示形式。

如果失败,将返回 4xx 错误并显示具体详细信息。

示例

示例 1:创建特定的社交标识提供者 (Microsoft Entra ID 和 Azure AD B2C)

请求

以下示例显示了一个请求。

POST https://graph.microsoft.com/v1.0/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"
}

响应

以下示例显示了相应的响应。

注意:为了提高可读性,可能缩短了此处显示的响应对象。

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"
}

示例 2:仅针对 Azure AD B2C) 创建 (Apple 标识提供者

请求

以下示例显示了一个请求。

POST https://graph.microsoft.com/v1.0/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": "******"
}

响应

以下示例显示了相应的响应。

注意:为了提高可读性,可能缩短了此处显示的响应对象。

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": "******"
}