简介
本文讨论如何排查 Microsoft 云服务(例如Office 365、Microsoft Intune或 Microsoft Azure)中的单一登录设置问题。
Azure Active Directory (Azure AD) 帮助文档中提供了单一登录 (SSO) 的详细实施指南。 如果在使用该指南设置 SSO 时遇到问题,可以参阅本文。 它提供了一个路线图,以帮助排查每个设置步骤的常见问题。程序
如何排查 SSO 设置问题
步骤 1:准备 Active Directory
设置指南
转到以下 Microsoft 网站:
步骤 1 的验证
使用评估目录同步设置诊断向导扫描 Active Directory,查找可能导致目录同步问题的问题。
排查步骤 1 的验证问题
步骤 2:Active Directory 联合身份验证服务 (AD FS) 体系结构
设置指南
转到以下 Microsoft 网站: 请注意,Microsoft 支持部门不会帮助客户执行这些链接中的设置指南。步骤 3:用于 SSO Windows PowerShell的 Azure Active Directory 模块
设置指南
转到以下 Microsoft 网站:
步骤 3 的验证
若要验证适用于 SSO Windows PowerShell的 Azure Active Directory 模块,请执行以下步骤:
-
以管理员身份运行用于Windows PowerShell的 Azure Active Directory 模块。
-
键入以下命令,并确保在键入每个命令后按 Enter:
-
$cred=Get-Credential
注意 出现提示时,键入云服务管理员凭据。 -
Connect-MsolService -Credential $cred
-
Set-MsolAdfscontext -Computer < AD FS 2.0 primary server >
-
如果在主 Active Directory 联合身份验证服务 (AD FS) 服务器上安装了用于 Windows PowerShell 的 Azure Active Directory 模块,则无需运行此 cmdlet。
-
在此命令中,占位符<AD FS 2.0 主服务器>表示主 AD FS 服务器的内部完全限定域名 (FQDN) 。 此命令创建一个上下文,用于将你连接到 AD FS。
-
-
Get-MSOLFederationProperty -DomainName < federated domain name >
-
-
比较在步骤 2D 中运行的 (Get-MSOLFederationProperty 命令的输出的前半部分源:AD FS 服务器) 和后半部分 (源:Microsoft Office 365) 。 除 Source 和 FederationServiceDisplayName 之外的所有条目都应匹配。 如果不匹配,请使用以下 Microsoft 知识库文章的“解决方法”部分更新信赖方信任数据:2647020“抱歉,我们登录你时遇到问题”和“80041317”或“80043431”错误时,联合用户尝试登录Office 365、Azure 或 Intune
排查步骤 3
验证问题 若要进行故障排除,请执行以下步骤:-
根据你的情况,使用以下 Microsoft 知识库文章排查常见的验证问题:
-
2461873 无法打开用于Windows PowerShell的 Azure Active Directory 模块
-
2494043无法使用 Azure Active Directory 模块进行连接Windows PowerShell
-
使用 Set-MsolADFSContext cmdlet 时,2587730“连接到 <ServerName> Active Directory 联合身份验证服务 2.0 服务器失败”错误
-
2279117 管理员无法将域添加到 Office 365 帐户
-
第二次运行 New-MsolFederatedDomain cmdlet 时出错,因为域验证失败。 有关此方案的详细信息,请参阅以下知识库文章:
2515404 排查 Office 365 中的域验证问题
-
2618887“AD FS 2.0 服务器中指定的联合服务标识符已在使用”。尝试在 Office 365、Azure 或 Intune中设置另一个联合域时出错
-
时间问题会导致New-MSOLFederatedDomain cmdlet 或 Convert-MSOLDomainToFederated cmdlet 出现问题。
-
-
重新运行验证步骤以检查问题是否已解决。
步骤 4:实现 Active Directory 同步
设置指南
转到以下 Microsoft 网站:
步骤 4 的验证
若要验证,请执行以下步骤:
-
以管理员身份运行用于Windows PowerShell的 Azure Active Directory 模块。
-
键入以下命令。 确保在键入每个命令后按 Enter。
-
$cred=Get-Credential
注意 出现提示时,键入云服务管理员凭据。 -
Connect-MsolService -Credential $cred
注意 此命令可将你连接到 Azure AD。 在运行 Azure Active Directory 模块为Windows PowerShell安装的任何其他 cmdlet 之前,必须创建一个将你连接到 Azure AD 的上下文。 -
Get-MSOLCompanyInformation
-
-
检查先前命令输出中的 LastDirSyncTime 值,并确保它在安装 Azure Active Directory 同步工具后显示同步。
注意 此值的日期和时间戳显示在格林威治标准时间) 协调世界时 (。 -
如果未更新 LastDirSyncTime,请监视安装 Azure Active Directory 同步工具的服务器的应用程序日志,以确定是否发生以下事件:
-
源:目录同步
-
事件 ID:4
-
级别:信息
此事件指示目录同步在服务器上完成。 发生这种情况时,请重新运行这些步骤,以确保 LastDirSyncTime 值已正确更新。
-
排查步骤 4
的验证问题 根据你的情况,使用以下 Microsoft 知识库文章排查常见的验证问题:-
在 Azure Active Directory 同步工具配置向导中输入企业管理员凭据后,2508225“LogonUser () 失败,错误代码为 1789”
-
2502710运行 Azure Active Directory 同步工具配置向导时出现“Microsoft Online Services 登录助手出现未知错误”错误
-
2419250尝试安装 Azure Active Directory 同步工具时出现“计算机必须加入域”错误
-
2643629 使用 Azure Active Directory 同步工具时,一个或多个对象不会同步
-
2641663 如何使用 SMTP 匹配将本地用户帐户与目录同步Office 365用户帐户进行匹配
-
2492140 无法在Office 365门户中将联合域分配给用户
步骤 5:Office 365客户端准备
设置指南
-
检查Office 365的客户端先决条件。 有关Office 365的系统要求的详细信息,请转到Office 365系统要求。
-
在使用丰富客户端应用程序的所有客户端计算机上运行Office 365桌面安装程序。 丰富的客户端应用程序包括 Microsoft Outlook、Microsoft Lync 2010、Microsoft Office Professional Plus 2010、用于Windows PowerShell的 Azure Active Directory 模块。 Office 桌面应用程序和 Microsoft SharePoint 集成应用程序。
-
如果已加入域和已连接域的客户端计算机需要无缝的无提示体验,请将 AD FS 联合身份验证服务 URL 添加到 Windows Internet Explorer 中的本地 Intranet 区域。 例如,执行以下操作:
-
在 Internet Explorer 的“ 工具 ”菜单上,单击“ Internet 选项”。
-
依次单击“ 安全性 ”选项卡、“ 本地 Intranet”、“ 站点”和“ 高级”。
-
在 “将此网站添加到区域 ”框中键入 https://sts.contoso.com,然后单击“ 添加”。
注意“sts.contoso.com”表示 AD FS 联合身份验证服务的 FQDN。
有关此配置的详细信息,请参阅以下 Microsoft 知识库文章:
2535227 系统会意外提示联合用户输入其工作或学校帐户凭据
-
-
如果已加入域和连接到域的客户端计算机使用代理服务器访问 Internet 资源,该代理服务器使用公共 DNS 查询 (解析 Internet 地址,而不是内部的拆分式 DNS) ,请将 AD FS 联合身份验证服务 URL 添加到 Internet Explorer 将绕过代理筛选的列表。 下面是如何将 URL 添加到 Internet Explorer 异常列表的示例:
-
在 Internet Explorer 的“ 工具 ”菜单上,单击“ Internet 选项”。
-
在“ 连接 ”选项卡上,单击“ LAN 设置”,然后单击“ 高级”。
-
在“ 例外 ”框中,使用 AD FS 服务终结点名称的完全限定 DNS 名称输入值。 例如,输入 sts.contoso.com。
-
步骤 5
的验证 若要验证,请执行以下步骤:-
确保已安装并运行 Microsoft Online Services 登录助手服务。 为此,请按照下列步骤操作:
-
单击 “开始”,单击“ 运行”,键入“Services.msc”,然后单击“ 确定”。
-
找到“Microsoft Online Services 登录助手”条目,并确保该服务正在运行。
-
如果服务未运行,请右键单击条目,然后选择“ 启动”。
-
-
转到 AD FS MEX 网站,确保终结点是 Internet Explorer Intranet 安全区域的一部分。 为此,请按照下列步骤操作:
-
启动 Internet Explorer,然后转到 AD FS 服务终结点网站。 下面是服务终结点网站的示例:
https://sts.contoso.com/federationmetadata/2007-06/federationmetadata.xml
-
检查窗口底部的状态栏,确保为此 URL 指示的安全区域是 本地 Intranet。
-
步骤 6:最终验证
在配置的客户端计算机上,测试预期的 SSO 身份验证体验。 为此,请使用联合用户帐户进行身份验证。 在以下情况下,你可能想要测试联合用户的身份验证:
-
在本地网络中,并向 本地 Active Directory进行身份验证
-
从与 Internet 无关的 IP 位置,且未向本地 Active Directory进行身份验证
若要验证,请执行以下步骤:
-
测试 Web 身份验证。 为此,请使用下列方法之一:
-
使用本地 Active Directory 凭据以联合用户身份登录到云服务门户。
-
使用具有Exchange Online邮箱的本地 Active Directory 凭据) ,以联合用户 (身份登录到Outlook Web App。 例如,通过以下 URL 登录到 Outlook Web App:
https://outlook.com/owa/contoso.comNote 在此 URL 中,“contoso.com”表示联合域名。
-
使用本地 Active Directory 凭据) 有权访问工作组网站集的联合用户 (登录到Microsoft Office SharePoint Online。 例如,通过以下 URL 登录到 SharePoint Online:
http://contoso.sharepoint.comNote 在此 URL 中,“contoso”表示组织的名称。
-
-
测试富客户端或活动请求者身份验证。 为此,请按照下列步骤操作:
-
为联合用户帐户配置 Skype for Business Online (以前为 Lync Online) 客户端配置文件,然后使用本地 Active Directory 凭据登录到该帐户。
-
使用通过 connect-MSOLService cmdlet 具有全局管理员凭据的联合用户帐户登录到用于Windows PowerShell的 Azure Active Directory 模块。
-
-
使用 Microsoft 远程连接分析器测试Exchange Online基本身份验证。 有关如何使用远程连接分析器的详细信息,请参阅 Microsoft 知识库中的以下文章:
2650717 如何使用远程连接分析器排查Office 365、Azure 或 Intune的单一登录问题
仍然需要帮助? 转到 Microsoft 社区 或 Azure Active Directory 论坛 网站。