Single sign-on - AWS Directory Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Single sign-on

AWS Directory Service 允许您的用户从已加入目录的计算机访问 Amazon WorkDocs,而无需单独输入其凭证。

启用单点登录之前,您需要执行其他步骤,以便使用户的 Web 浏览器可以支持单点登录。用户可能需要修改其 Web 浏览器设置来启用单点登录。

注意

只有在已加入到 AWS Directory Service 目录中的计算机上才支持单点登录。未加入到目录中的计算机上无法使用单点登录。

如果您的目录是 AD Connector 目录,且 AD Connector 服务账户没有权限添加或删除其服务委托人名称属性,则对于下面的步骤 5 和 6,您有两个选项:

  1. 您可以继续操作,系统将提示您输入具有以下权限的目录用户的用户名和密码:可在 AD Connector 服务账户上添加或删除服务委托人名称属性。这些凭证仅用于启用单点登录,不由服务进行存储。不会更改 AD Connector 服务账户权限。

  2. 您可以委派权限以允许 AD Connector 服务账户在自身上添加或删除服务委托人名称属性,您可以使用某个账户(该账户有权修改 AD Connector 服务账户的权限)从加入域的计算机运行以下 PowerShell 命令。以下命令将使 AD Connector 服务账户能够仅为其自身添加和删除服务委托人名称属性。

$AccountName = 'ConnectorAccountName' # DO NOT modify anything below this comment. # Getting Active Directory information. Import-Module 'ActiveDirectory' $RootDse = Get-ADRootDSE [System.GUID]$ServicePrincipalNameGuid = (Get-ADObject -SearchBase $RootDse.SchemaNamingContext -Filter { lDAPDisplayName -eq 'servicePrincipalName' } -Properties 'schemaIDGUID').schemaIDGUID # Getting AD Connector service account Information. $AccountProperties = Get-ADUser -Identity $AccountName $AclPath = $AccountProperties.DistinguishedName $AccountSid = New-Object -TypeName 'System.Security.Principal.SecurityIdentifier' $AccountProperties.SID.Value # Getting ACL settings for AD Connector service account. $ObjectAcl = Get-ACL -Path "AD:\$AclPath" # Setting ACL allowing the AD Connector service account the ability to add and remove a Service Principal Name (SPN) to itself $AddAccessRule = New-Object -TypeName 'System.DirectoryServices.ActiveDirectoryAccessRule' $AccountSid, 'WriteProperty', 'Allow', $ServicePrincipalNameGUID, 'None' $ObjectAcl.AddAccessRule($AddAccessRule) Set-ACL -AclObject $ObjectAcl -Path "AD:\$AclPath"

使用 Amazon WorkDocs 启用或禁用单点登录

  1. AWS Directory Service console导航窗格中,选择 Directories (目录)

  2. Directories 页面上,选择您的目录 ID。

  3. 目录详细信息页面上,选择 Application management (应用程序管理) 选项卡。

  4. Application access URL (应用程序访问 URL) 部分中,选择 Enable (启用) 以便为 Amazon WorkDocs 启用单点登录。

    如果您没有看到 Enable (启用) 按钮,则可能需要首先创建访问 URL,然后才能显示此选项。有关如何创建访问 URL 的更多信息,请参阅创建访问 URL

  5. Enable Single Sign-On for this directory (为此目录启用单点登录) 对话框中,选择 Enable (启用)。单点登录已为目录启用。

  6. 如果您以后希望使用 Amazon WorkDocs 禁用单点登录,请选择 Disable (禁用),然后在 Disable Single Sign-On for this directory (为此目录禁用单点登录) 对话框中,再次选择 Disable (禁用)

IE 和 Chrome 的单点登录

要使 Microsoft Internet Explorer (IE) 和 Google Chrome 浏览器可以支持单点登录,必须在客户端计算机上执行以下任务:

  • 将访问 URL(例如 https://<alias>.awsapps.com)添加到适用于单点登录的经审批站点列表中。

  • 启用活动脚本 (JavaScript)。

  • 允许自动登录。

  • 启用集成身份验证。

您或您的用户手动执行这些任务,也可以使用组策略设置更改这些设置。

Windows 上的单点登录的手动更新

要在 Windows 计算机上手动启用单点登录,请在客户端计算机上执行以下步骤。其中一些设置可能已正确设置。

在 Windows 上为 Internet Explorer 和 Chrome 手动启用单点登录

  1. 要打开 Internet Properties (Internet 属性) 对话框,请选择 Start (开始) 菜单,在搜索框中键入 Internet Options,然后选择 Internet Options (Internet 选项)

  2. 通过执行以下步骤将访问 URL 添加到适用于单点登录的经审批站点列表中:

    1. Internet Properties (Internet 属性) 对话框中选择 Security (安全性) 选项卡。

    2. 选择 Local intranet (本地内部网),然后选择 Sites (站点)

    3. Local intranet (本地内部网) 对话框中,选择 Advanced (高级)

    4. 将访问 URL 添加到网站列表,然后选择 Close (关闭)

    5. Local intranet (本地内部网) 对话框中,选择 OK (确定)

  3. 要启用活动脚本,请执行以下步骤:

    1. Internet Properties (Internet 属性) 对话框的 Security (安全性) 选项卡中,选择 Custom level (自定义级别)

    2. Security Settings - Local Intranet Zone (安全设置 - 本地内部网区域) 对话框中,向下滚动到 Scripting (脚本),然后在 Active scripting (活动脚本) 下选择 Enable (启用)

      
                                            Internet Explorer 启用脚本设置
    3. Security Settings - Local Intranet Zone (安全设置 - 本地内部网区域) 对话框中,选择 OK (确定)

  4. 要启用自动登录,请执行以下步骤:

    1. Internet Properties (Internet 属性) 对话框的 Security (安全性) 选项卡中,选择 Custom level (自定义级别)

    2. Security Settings - Local Intranet Zone (安全设置 - 本地内部网区域) 对话框中,向下滚动到 User Authentication (用户身份验证) 并在 Logon (登录) 下选择 Automatic logon only in Intranet zone (仅在内部网区域中自动登录)

      
                                            Internet Explorer 自动登录设置
    3. Security Settings - Local Intranet Zone (安全设置 - 本地内部网区域) 对话框中,选择 OK (确定)

    4. Security Settings - Local Intranet Zone (安全设置 - 本地内部网区域) 对话框中,选择 OK (确定)

  5. 要启用集成身份验证,请执行以下步骤:

    1. Internet Properties (Internet 属性) 对话框中选择 Advanced (高级) 选项卡。

    2. 向下滚动到 Security (安全性),然后选择 Enable Integrated Windows Authentication (启用集成式 Windows 身份验证)

      
                                            Internet Explorer 自动登录设置
    3. Internet Properties (Internet 属性) 对话框中,选择 OK (确定)

  6. 关闭并重新打开浏览器让这些更改生效。

OS X 上的单点登录的手动更新

要在 OS X 上为 Chrome 手动启用单点登录,请在客户端计算机上执行以下步骤。需要计算机上的管理员权限才能完成这些步骤。

在 OS X 上为 Chrome 手动启用单点登录

  1. 通过运行以下命令将访问 URL 添加到 AuthServerWhitelist 策略:

    defaults write com.google.Chrome AuthServerWhitelist "https://<alias>.awsapps.com"
  2. 打开 System Preferences (系统首选项),转到 Profiles (配置文件) 面板,然后删除 Chrome Kerberos Configuration 配置文件。

  3. 重新启动 Chrome,然后在 Chrome 中打开 chrome://policy 以确认新设置已实施。

单点登录的组策略设置

域管理员可以实施组策略设置以在加入域的客户端计算机上进行单点登录更改。

注意

如果在域中的计算机上使用 Chrome 策略管理 Chrome Web 浏览器,则必须将访问 URL 添加到 AuthServerWhitelist 策略。有关设置 Chrome 策略的更多信息,请转到 Chrome 中的策略设置

使用组策略设置为 Internet Explorer 和 Chrome 启用单点登录

  1. 通过执行以下步骤创建新的组策略对象:

    1. 打开组策略管理工具,导航到您的域并选择 Group Policy Objects (组策略对象)

    2. 在主菜单中,选择 Action (操作),然后选择 New (新建)

    3. New GPO (新建 GPO) 对话框中,为组策略对象输入一个描述性名称(如 SSO Policy),将 Source Starter GPO (源 Starter GPO) 保留为 (none) ((无))。单击 OK (确定)。

  2. 通过执行以下步骤将访问 URL 添加到适用于单点登录的经审批站点列表中:

    1. 在组策略管理工具中,导航到您的域,选择 Group Policy Objects (组策略对象),打开 SSO 策略的上下文(右键单击)菜单,然后选择 Edit (编辑)

    2. 在策略树中,导航到 User Configuration (用户配置) > Preferences (首选项) > Windows Settings (Windows 设置)

    3. Windows Settings (Windows 设置) 列表中,打开 Registry (注册表) 的上下文(右键单击)菜单并选择 New registry item (新建注册表项)

    4. New Registry Properties (新建注册表属性) 对话框中,输入以下设置,然后选择 OK (确定)

      Action (操作)

      Update

      Hive

      HKEY_CURRENT_USER

      路径

      Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\awsapps.com\<alias>

      <alias> 的值派生自访问 URL。如果访问 URL 是 https://examplecorp.awsapps.com,则别名是 examplecorp,注册表项是 Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\awsapps.com\examplecorp

      Value name (值名称)

      https

      Value type (值类型)

      REG_DWORD

      Value data (值数据)

      1

  3. 要启用活动脚本,请执行以下步骤:

    1. 在组策略管理工具中,导航到您的域,选择 Group Policy Objects (组策略对象),打开 SSO 策略的上下文(右键单击)菜单,然后选择 Edit (编辑)

    2. 在策略树中,导航到 Computer Configuration (计算机配置) > Policies (策略) > Administrative Templates (管理模板) > Windows Components (Windows 组件) > Internet Explorer > Internet Control Panel (Internet 控制面板) > Security Page (安全页) > Intranet Zone (内部网区域)

    3. Intranet Zone (内部网区域) 列表中,打开 Allow active scripting (允许活动脚本) 的上下文(右键单击)菜单,然后选择 Edit (编辑)

    4. Allow active scripting (允许活动脚本) 对话框中,输入以下设置,然后选择 OK (确定)

      • 选择 Enabled (启用) 单选按钮。

      • Options (选项) 下,将 Allow active scripting (允许活动脚本) 设置为 Enable (启用)

  4. 要启用自动登录,请执行以下步骤:

    1. 在组策略管理工具中,导航到您的域,选择“Group Policy Objects (组策略对象)”,打开 SSO 策略的上下文(右键单击)菜单,然后选择 Edit (编辑)

    2. 在策略树中,导航到 Computer Configuration (计算机配置) > Policies (策略) > Administrative Templates (管理模板) > Windows Components (Windows 组件) > Internet Explorer > Internet Control Panel (Internet 控制面板) > Security Page (安全页) > Intranet Zone (内部网区域)

    3. Intranet Zone (内部网区域) 列表中,打开 Logon options (登录选项) 的上下文(右键单击)菜单,选择 Edit (编辑)

    4. Logon options (登录选项) 对话框中,输入以下设置,然后选择 OK (确定)

      • 选择 Enabled (启用) 单选按钮。

      • Options (选项) 下,将 Logon options (登录选项) 设置为 Automatic logon only in Intranet zone (仅在内部网区域中自动登录)

  5. 要启用集成身份验证,请执行以下步骤:

    1. 在组策略管理工具中,导航到您的域,选择 Group Policy Objects (组策略对象),打开 SSO 策略的上下文(右键单击)菜单,然后选择 Edit (编辑)

    2. 在策略树中,导航到 User Configuration (用户配置) > Preferences (首选项) > Windows Settings (Windows 设置)

    3. Windows Settings (Windows 设置) 列表中,打开 Registry (注册表) 的上下文(右键单击)菜单并选择 New registry item (新建注册表项)

    4. New Registry Properties (新建注册表属性) 对话框中,输入以下设置,然后选择 OK (确定)

      Action (操作)

      Update

      Hive

      HKEY_CURRENT_USER

      路径

      Software\Microsoft\Windows\CurrentVersion\Internet Settings

      Value name (值名称)

      EnableNegotiate

      Value type (值类型)

      REG_DWORD

      Value data (值数据)

      1

  6. 如果 Group Policy Management Editor (组策略管理编辑器) 窗口仍打开,关闭该窗口。

  7. 通过执行以下步骤将新策略分配给您的域:

    1. 在组策略管理树中,打开您的域的上下文 (右键单击) 菜单,然后选择 Link an Existing GPO (链接现有 GPO)

    2. Group Policy Objects (组策略对象) 列表中,选择您的 SSO 策略,然后选择 OK (确定)

这些更改会在客户端上的下一次策略更新之后,或是在下次用户登录时生效。

Firefox 的单点登录

要使 Mozilla Firefox 浏览器可以支持单点登录,请将访问 URL(例如 https://<alias>.awsapps.com)添加到适用于单点登录的经审批站点列表中。这可以手动执行,也可以使用脚本自动进行。

单点登录的手动更新

要在 Firefox 中将访问 URL 手动添加到经审批站点列表中,请在客户端计算机上执行以下步骤。

在 Firefox 中将访问 URL 手动添加到经审批站点列表中

  1. 打开 Firefox,然后打开 about:config 页面。

  2. 打开 network.negotiate-auth.trusted-uris 首选项,然后将访问 URL 添加到站点列表中。使用逗号 (,) 分隔多个条目。

    
                                    Internet Explorer 自动登录设置

单点登录的自动更新

作为域管理员,可以使用脚本在网络上的所有计算机上将访问 URL 添加到 Firefox network.negotiate-auth.trusted-uris 用户首选项。有关更多信息,请转到 https://support.mozilla.org/en-US/questions/939037