通过SAML for Office 365的Google Apps iDP

时间:2018-10-23 09:44:35

标签: office365 saml gsuite idp

我有一个NPO客户,所以他们免费获得了NSu和Office 365 E1的GSuite。

他们希望保留Gsuite并使用某些Office 365功能,例如OneDrive。我花了一周的时间来尝试解决问题,我一直在关注所有在线教程,以了解如何实现这一目标,但是当我进入Gsuite中的“将Office 365用户属性映射到相应的Cloud Directory属性”时,一直失败。我所看到的问题似乎是“ onPremisesImmutableId”。这在Gsuite中对应什么?

有人能成功做到这一点吗?我已经按照我在网上可以找到的所有教程进行了学习,但是当涉及到属性时,每个人都没有信息。

谢谢

3 个答案:

答案 0 :(得分:1)

到目前为止,我已经能够在启用配置的情况下将Google设置为SAML IDP,这样就可以在Azure AD中创建具有G Suite创建并添加到office-users组的帐户,并为其分配许可证。

google documentation很简单,但是仅简要介绍了Windows设置,这是很困难的部分。我整理了几个other sources以使事情正常进行。

  1. 在Google管理控制台“应用程序”部分中添加SAML应用程序(Office365)。设置都应该正确建立。 Office365 Entry

  2. 检查Office365 SAML应用程序配置 enter image description here 注意

  3. 配置预配置(从GSuite到Azure AD的同步帐户) GSuite Office365 Provisioning。 (可选)将范围设置为Google网上论坛(只会自动设置该网上论坛或OU的成员;我使用了一个名为office-users的网上论坛) enter image description here

    Azure AD设置

  4. Validate your domain on Azure

  5. 启动Powershell控制台并安装所需的工具 enter image description here

> Connect-MsolService(使用管理员凭据连接)

`> Set-MsolDomainAuthentication -DomainName“ {您的域}” -FederationBrandName“ {您的品牌登录}”-联合身份验证-PassiveLogOnUri“ {google-url}” -ActiveLogOnUri“ {google-url}” -SigningCertificate“ {cert info}“ -IssuerUri” {google-issuer}“ -LogOffUri” {google-uri}“ -PreferredAuthenticationProtocol” SAMLP“

其中证书是google .pem文件,没有换行符或开始/结束标记,以及以下URI,其中GOOGLESAMLID是您的G Suite不可变ID(来自Google Admin console SSO setup pane

google-uri=https://accounts.google.com/a/saml2/idp?idpid=GOOGLESAMLID

google-issuer=https://accounts.google.com/a/saml2?idpid=GOOGLESAMLID

回读属性:

> Get-MsolDomainFederationSettings -DomainName "{your-domain}" | Format-List *

  1. 关闭Azure密码重置自助服务

  2. 通过创建新的G Suite用户进行测试。应在AD中创建相应的用户。

我仍在尝试找出如何将新的G Suite用户映射到现有的Azure AD用户。似乎应该可行,但我不知道映射的存储位置。

我能够首先在Windows上创建一个用户,并将其ImmutableId属性设置为预期的GSuite电子邮件地址:

> Set-MsolUser -UserPrincipalName "my@domain.com" -ImmutableId "my@domain.com"
> $user = Get-MsolUser -UserPrincipalName "my@domain.com"
> $user.ImmutableId

然后在GSuite中创建一个新用户,并将新用户放入您确定可以访问Office应用程序的范围。现在,Azure AD将重定向到Google进行身份验证,您可以使用Google凭据而不是Azure上的任何凭据。

编辑 在GSuite中创建新用户后,更改可能需要几分钟才能传播到Azure AD。

答案 1 :(得分:0)

我相信您将PremisesImmutableId映射为基本信息->用户名

如果选择任何其他字段,则会收到警告: 您的用户可能无法登录,因为名称ID的SSO属性映射与onPremisesImmutableId的SSO属性映射不同。您要继续吗?

答案 2 :(得分:0)

我也遇到了Office 365 / G-Suite目录的问题 只是为了添加ImmutableID,我在Reddit上发现了一些有趣的东西:

Google为其域管理员提供了创建附加到用户的可填写的自由格式属性的功能。它基本上是附加到用户的命名隐藏属性。对于使用O365进行联合的情况,您需要创建一个至少具有一个称为ImmutableID的属性的模式。这是用于将Google用户与Office 365用户相关联的SAML NameID属性。 ImmutableID(仅在O365中使用的属性)是Active Directory用户GUID的Base64表示形式。 示例:58bcbac8-0b42-4a3e-ae76-307510908f59变为+ D2MBMPlTp + Hh7Q0qEm3iw == 您可以将其放入当前的创建/更新用户脚本中,直接定位API,或使用其他工具(例如GAM)。您不能将此值手动添加到G Suite控制面板中的架构,因为它不允许您输入某些字符,必须以一种或另一种方式编写脚本。我们有一个辅助工具,可以使用户名保持同步,已将其添加到该工具中。

在此处查看主题:https://www.reddit.com/r/k12sysadmin/comments/83w004/google_to_microsoft_azure_ado365_sso/

基本上,您想为Office 365创建一个额外的架构并添加该ImmutableID字段。我可能会用我们的广告作为来源,让您知道。