我有本地 AD 和 Azure 上的 AD,并且我设置了 ADFS 和 ADFS 代理服务器来对本地 AD 上的用户进行身份验证。我已按照 Microsoft 网站上的所有步骤在 Azure AD 和本地 AD 之间设置信任。但是它说 Dir Sync 是实现本地和云 AD 中用户的 SSO 所必需的。我不想使用 Dir Sync,我希望我的 ADFS 能够对来自本地 AD 和 Azure AD 的用户进行身份验证。
有人能告诉我实现该目标的步骤吗?
答案1
假设这是针对 O365 或 Intune 的 - DirSync 是必需组件。DirSync 将允许相同的登录,这意味着两个环境中的密码相同。添加 ADFS 将允许单身的登录,这意味着用户将无缝地进行身份验证,而无需输入凭据。DirSync 是相同登录和单点登录的基础组件。
您不能仅使用 ADFS 进行 Azure AD 租户单点登录。
答案2
我有同样的问题,并且来自马维拉斯让我走上正轨。我做了一些研究,让它发挥作用,以下是对我有用的方法。
不确定这是否是“受支持的”解决方案,因为他们似乎真的很喜欢他们的 DirSync。不过,它之所以受支持是有道理的,原因如下马维拉斯提到 - 即允许非 Active Directory 基础设施仍然通过 SSO 进入 Office 365。
您需要执行以下操作:
通过运行 Convert-MsolDomainToFederated powershell 小程序,在 Office 365 端启用域的 SSO。您可能已经这样做了。
手动或使用 powershell 在 Office 365 端创建您想要启用 SSO 的用户帐户。
创建它们后,您需要使用 ObjectGUID你的AD 帐户的对象作为其在 Azure 端的不可变 ID。
我使用它们作为参考,但我会包含这些信息以防这些 URL 将来消失:
您需要对用户的 ObjectGUID 进行 base64 编码并进行设置。您编码的 GUID 不应包含括号:
此处的脚本会为您完成转换: http://gallery.technet.microsoft.com/office/Covert-DirSyncMS-Online-5f3563b1
AD 对象 GUID(以“注册表格式”)748b2d72-706b-42f8-8b25-82fd8733860f
编码:ci2LdGtw+EKLJYL9hzOGDw==
您可以通过 powershell 在 Azure 上的帐户上进行设置:
设置 MsolUser -UserPrincipalName[电子邮件保护]-ImmutableId“ci2LdGtw + EKLJYL9hzOGDw ==”
确保您的用户帐户(在 AD 域端)上的 UPN 与[电子邮件保护]Office 365 在其端拥有的 UPN,否则您将在 Azure 端收到奇怪的错误。我认为错误代码是 8004786C
如果您在 AD 环境中没有可用于设置用户的 UPN 后缀,则必须通过“Active Directory 域和信任”添加该后缀。或者,如果您想聪明一点,可以在 AD 帐户上设置另一个属性,并让 ADFS 将该属性作为不可变 ID 发送。如果您不明白我的意思 - 那么只需设置 UPN。:)
Microsoft Office 365 不会作为选项显示在服务器上由 ADFS IDP 启动的下拉菜单中。看起来它是由 SP 启动的,您必须先访问其门户来触发 SAML 舞蹈:https://portal.microsoftonline.com
您可以使用 Fiddler 之类的工具来获取 SSL 对话,然后解析出一些信息http://community.office365.com/en-us/wikis/sso/using-smart-links-or-idp-initiated-authentication-with-office-365.aspx为了获得更多 IDP 启动的感觉,用户单击您的链接并一路顺利登录到 Office 365,而无需输入任何内容。
答案3
这有帮助吗?http://technet.microsoft.com/en-us/library/dn296436.aspx
我已经有一段时间没有做你所要求的事情了,但那已经在我的笔记中了。