将 Google 添加为标识提供者(预览版)
适用于: 员工租户 外部租户(了解详细信息)
通过设置与 Google 的联合身份验证,你允许客户使用他们自己的 Gmail 帐户登录到应用程序。 将 Google 添加为用户流的登录选项之一后,客户可以使用 Google 帐户注册并登录到应用程序。 (详细了解客户的身份验证方法和标识提供者。)
先决条件
创建 Google 应用程序
要使客户能够使用 Google 帐户登录,需要在 Google Developers Console 中创建应用程序。 有关详细信息,请参阅设置 OAuth 2.0。 如果还没有 Google 帐户,可以在 https://accounts.google.com/signup
上注册。
使用 Google 帐户凭据登录 Google 开发人员控制台。
如果系统提示接受服务条款,请接受它。
在页面左上角选择项目列表,然后选择“New Project”(新建项目)。
输入项目名称,然后选择“Create”(创建)。
通过选择屏幕左上角的项目下拉列表来确保使用的是新项目。 根据名称选择你的项目,然后选择“Open”(打开)。
在“快速访问”下,或在左侧菜单中,选择 “API 和服务”,然后选择“OAuth 同意屏幕”。
在“用户类型”下,选择“外部”,然后选择“创建”。
在“OAuth 许可屏幕”上的“应用信息”下
- 输入应用程序的名称。
- 选择“用户支持电子邮件”地址。
在“授权域”部分下,选择“添加域”,然后添加
ciamlogin.com
和microsoftonline.com
。在“开发人员联系人信息”部分,输入逗号分隔的电子邮件,以便 Google 通知你对项目所做的任何更改。
选择“保存并继续”。
在左侧菜单中,选择“凭据”
选择“创建凭据”,然后选择“OAuth 客户端 ID”。
在“应用程序类型”下,选择“Web 应用程序”。
- 为应用程序输入合适的“名称”,例如“Microsoft Entra 外部 ID”。
- 在“有效的 OAuth 重定向 URI”中,输入以下 URI。 将
<tenant-ID>
替换为你的客户目录(租户)ID,并将<tenant-subdomain>
替换为你的客户目录(租户)子域。 如果没有租户名称,请了解如何读取租户详细信息。
https://login.microsoftonline.com
https://login.microsoftonline.com/te/<tenant-ID>/oauth2/authresp
https://login.microsoftonline.com/te/<tenant-subdomain>.onmicrosoft.com/oauth2/authresp
https://<tenant-ID>.ciamlogin.com/<tenant-ID>/federation/oidc/accounts.google.com
https://<tenant-ID>.ciamlogin.com/<tenant-subdomain>.onmicrosoft.com/federation/oidc/accounts.google.com
https://<tenant-subdomain>.ciamlogin.com/<tenant-ID>/federation/oauth2
https://<tenant-subdomain>.ciamlogin.com/<tenant-subdomain>.onmicrosoft.com/federation/oauth2
选择创建。
记录“客户端 ID”和“客户端密码”的值。 将 Google 配置为租户中的标识提供者时需要这两个值。
注意
在有些情况下,你的应用可能需要由 Google 验证(例如,如果你更新应用程序徽标)。 有关详细信息,请参阅 Google 的验证状态 guid。
在 Microsoft Entra 外部 ID 中配置 Google 联合身份验证
创建 Google 应用程序后,接下来在 Microsoft Entra ID 中设置 Google 客户端 ID 和客户端密码。 可使用 Microsoft Entra 管理中心或 PowerShell 执行此操作。 要在 Microsoft Entra 管理中心配置 Google 联合身份验证,请执行以下步骤:
浏览到“标识”>“外部标识”>“所有标识提供者”。
在“Google”旁边的“内置”选项卡上,选择“配置”。
输入“名称”。 例如 Google。
对于“客户端 ID”,请输入前面创建的 Google 应用程序的客户端 ID。
对于“客户端密码”,输入已记录的客户端密码。
选择“保存”。
按照以下步骤使用 PowerShell 配置 Google 联合身份验证:
运行以下命令:
Connect-MgGraph
在登录提示符下,至少以外部标识提供者管理员身份登录。
运行以下命令:
Import-Module Microsoft.Graph.Identity.SignIns $params = @{ "@odata.type" = "microsoft.graph.socialIdentityProvider" displayName = "Login with Google" identityProviderType = "Google" clientId = "00001111-aaaa-2222-bbbb-3333cccc4444" clientSecret = "000000000000" } New-MgIdentityProvider -BodyParameter $params
使用在“创建 Google 应用程序”步骤中创建的应用的客户端 ID 和客户端机密。
将 Google 标识提供者添加到用户流
此时,Google 标识提供者已在 Microsoft Entra ID 中设置完毕,但还不能在任何登录页面中使用。 将 Google 标识提供者添加到用户流:
在外部租户中,浏览到“标识”>>“外部标识”“用户流”。
选择要将 Google 标识提供者添加到的用户流。
在“设置”下,选择“标识提供者”。
在“其他标识提供者”下,选择“Google”。
选择“保存”。