

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 啟用單一登入
<a name="simple_ad_single_sign_on"></a>

AWS Directory Service 可讓您的使用者從加入目錄的電腦存取 WorkDocs，而不必另外輸入登入資料。

啟用單一登入之前，您需要採取額外的步驟，讓您使用者的 Web 瀏覽器支援單一登入。使用者可能需要修改其 Web 瀏覽器設定，才能啟用單一登入。

**注意**  
單一登入僅適用於加入 Directory Service 目錄的電腦。它無法用於未加入目錄的電腦。

如果您的目錄是 AD Connector 目錄，且 AD Connector 服務帳戶沒有新增或移除其服務主要名稱屬性的權限，則對於以下的步驟 5 和 6，您有兩個選項：

1. 您可以繼續進行，且系統會提示您輸入具有此權限之目錄使用者的使用者名稱和密碼，以便在 AD Connector 服務帳戶上新增或移除服務主要名稱屬性。這些憑證只會用來啟用單一登入，服務不會存放此資料。 AD Connector 服務帳戶權限不會變更。

1. 您可以委派權限，以允許 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"
```

**使用 WorkDocs 啟用或停用單一登入**

1. 在 [AWS Directory Service 主控台](https://console.aws.amazon.com/directoryservicev2/)導覽窗格中，**選取目錄**。

1. 在 **Directories** (目錄) 頁面中，選擇目錄 ID。

1. 在 **Directory details (目錄詳細資訊)** 頁面上，選取 **Application management (應用程式管理)** 索引標籤。

1. 在**應用程式存取 URL** 區段中，選擇**啟用**以啟用 WorkDocs 的單一登入。

   如果您看不到**啟用**按鈕，您可能需要先建立存取 URL，此選項才會顯示。如需如何建立存取 URL 的詳細資訊，請參閱「[建立 AWS Managed Microsoft AD 的存取 URL](ms_ad_create_access_url.md)」。

1. 在**啟用此目錄的單一登入**對話方塊中，選擇**啟用**。這會啟用目錄的單一登入。

1. 如果您稍後想要使用 WorkDocs 停用單一登入，請選擇**停用**，然後在停用**此目錄的單一登入**對話方塊中，再次選擇**停用**。

**Topics**
+ [IE 和 Chrome 的單一登入](#ie_sso)
+ [Firefox 的單一登入](#firefox_sso)

## IE 和 Chrome 的單一登入
<a name="ie_sso"></a>

若要讓 Microsoft Internet Explorer (IE) 和 Google Chrome 瀏覽器支援單一登入，您必須在用戶端電腦上執行下列任務：
+ 將您的存取 URL (例如 https://*<別名>*.awsapps.com) 新增至允許單一登入的網站清單。
+ 啟用動態指令碼處理 (JavaScript)。
+ 允許自動登入。
+ 啟用整合式身分驗證。

您或您的使用者可以手動執行這些任務，或者您可以使用群組原則設定來變更這些設定。

**Topics**
+ [手動更新 Windows 上的單一登入](#ie_sso_manual_windows)
+ [手動更新 OS X 的單一登入](#chrome_sso_manual_mac)
+ [單一登入的群組政策設定](#ie_sso_gpo)

### 手動更新 Windows 上的單一登入
<a name="ie_sso_manual_windows"></a>

若要在 Windows 電腦上手動啟用單一登入，請在用戶端電腦上執行下列步驟。其中一些設定可能已正確設定。

**在 Windows 上手動啟用 Internet Explorer 和 Chrome 的單一登入**

1. 若要開啟**網際網路內容**對話方塊，請選擇**開始**選單，在搜尋方塊中輸入 `Internet Options`，然後選擇**網際網路選項**。

1. 執行下列步驟，將您的存取 URL 新增至允許單一登入的網站清單：

   1. 在**網際網路內容**對話方塊中，選取**安全性**標籤。

   1. 選取**近端內部網路**，然後選擇**網站**。

   1. 在**近端內部網路**對話方塊中，選擇**進階**。

   1. 將您的存取 URL 新增至網站清單，然後選擇**關閉**。

   1. 在**近端內部網路**對話方塊中，選擇**確定**。

1. 若要啟用動態指令碼處理，請執行下列步驟：

   1. 在**網際網路內容**對話方塊的**安全性**標籤中，選擇**自訂等級**。

   1. 在**安全性設定 - 近端內部網路區域**對話方塊中，向下捲動到**指令碼處理**，然後在 **Active scripting** 下選取**啟用**。

   1. 在**安全性設定 - 近端內部網路區域**對話方塊中，選擇**確定**。

1. 若要啟用自動登入，請執行下列步驟：

   1. 在**網際網路內容**對話方塊的**安全性**標籤中，選擇**自訂等級**。

   1. 在**安全性設定 - 近端內部網路區域**對話方塊中，向下捲動到**使用者驗證**，然後在**登入**下選取**只在近端內部網路區域自動登入**。

   1. 在**安全性設定 - 近端內部網路區域**對話方塊中，選擇**確定**。

   1. 在**安全性設定 - 近端內部網路區域**對話方塊中，選擇**確定**。

1. 若要啟用整合式身分驗證，請執行下列步驟：

   1. 在**網際網路內容**對話方塊中，選取**進階**標籤。

   1. 向下捲動到**安全性**，然後選取**啟用整合式 Windows 驗證**。

   1. 在**網際網路內容**對話方塊中，選擇**確定**。

1. 關閉並重新開啟您的瀏覽器，讓這些變更生效。

### 手動更新 OS X 的單一登入
<a name="chrome_sso_manual_mac"></a>

若要在 OS X 上手動啟用 Chrome 的單一登入，請在用戶端電腦上執行下列步驟。您需要電腦的管理員權限，才能完成下列步驟。

**在 OS X 上手動啟用 Chrome 的單一登入**

1. 執行下列命令，將您的存取 URL 新增至 [AuthServerAllowlist](https://chromeenterprise.google/policies/#AuthServerAllowlist) 政策：

   ```
   defaults write com.google.Chrome AuthServerAllowlist "https://<alias>.awsapps.com"
   ```

1. 開啟 **System Preferences**，前往 **Profiles** 面板，然後刪除 `Chrome Kerberos Configuration` 描述檔。

1. 重新啟動 Chrome，然後在 Chrome 中開啟 chrome://policy 以確認具有此新的設定。

### 單一登入的群組政策設定
<a name="ie_sso_gpo"></a>

網域管理員可以實作群組原則設定，在加入網域的用戶端電腦上進行單一登入變更。

**注意**  
如果您使用 Chrome 政策在域中的電腦上管理 Chrome Web 瀏覽器，您必須將存取 URL 新增至 [AuthServerAllowlist](https://chromeenterprise.google/policies/#AuthServerAllowlist) 政策。如需設定 Chrome 政策的詳細資訊，請前往 [Policy Settings in Chrome](https://source.chromium.org/chromium/chromium/src/+/main:docs/enterprise/add_new_policy.md)。

**使用群組原則設定啟用 Internet Explorer 和 Chrome 的單一登入**

1. 執行下列步驟，建立新的群組原則物件：

   1. 開啟群組原則管理工具，導覽至您的網域，然後選取 **Group Policy Objects** (群組原則物件)。

   1. 從主選單選擇**動作**，然後選取**新增**。

   1. 在**新增 GPO** 對話方塊中，輸入群組政策物件的描述性名稱 (例如 `IAM Identity Center Policy`)，並將**來源入門 GPO** 保留設定為 **(無)**。按一下 **OK (確定)**。

1. 執行下列步驟，將存取 URL 新增至允許單一登入的網站清單：

   1. 在群組政策管理工具中，導覽至您的域並選取**群組政策物件**，開啟您 IAM Identity Center 政策的內容 (右鍵) 選單，然後選擇**編輯**。

   1. 在原則樹狀目錄中，導覽至**使用者設定** > **喜好設定** > **Windows 設定**。

   1. 在 **Windows 設定**清單中，開啟**登錄**的內容 (右鍵) 選單，然後選擇**新增登錄項目**。

   1. 在**新登錄內容**對話方塊中，輸入下列設定並選擇**確定**：  
**Action**  
`Update`  
**Hive**  
`HKEY_CURRENT_USER`  
**路徑**  
`Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\awsapps.com\<alias>`  
*<別名>* 的值是衍生自您的存取 URL。如果您的存取 URL 是 `https://examplecorp.awsapps.com`，則別名是 `examplecorp` 且登錄機碼會是 `Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\awsapps.com\examplecorp`。  
**值名稱**  
`https`  
**值類型**  
`REG_DWORD`  
**值資料**  
`1`

1. 若要啟用動態指令碼處理，請執行下列步驟：

   1. 在群組政策管理工具中，導覽至您的域並選取**群組政策物件**，開啟您 IAM Identity Center 政策的內容 (右鍵) 選單，然後選擇**編輯**。

   1. 在原則樹狀目錄中，導覽至**電腦設定** > **原則** > **系統管理範本** > **Windows 元件** > **Internet Explorer** > **網際網路控制台** > **安全性畫面** > **內部網路區域**。

   1. 在**內部網路區域**清單中，開啟**允許動態指令碼處理**的內容 (右鍵) 選單，然後選擇**編輯**。

   1. 在**允許動態指令碼處理**對話方塊中，輸入下列設定並選擇**確定**：
      + 選取**已啟用**選項按鈕。
      + 在**選項**下，將**允許動態指令碼處理**設定為**啟用**。

1. 若要啟用自動登入，請執行下列步驟：

   1. 在群組原則管理工具中，導覽至您的網域並選取群組原則物件，開啟您 SSO 原則的內容 (右鍵) 選單，然後選擇**編輯**。

   1. 在原則樹狀目錄中，導覽至**電腦設定** > **原則** > **系統管理範本** > **Windows 元件** > **Internet Explorer** > **網際網路控制台** > **安全性畫面** > **內部網路區域**。

   1. 在**內部網路區域**清單中，開啟**登入選項**的內容 (右鍵) 選單，然後選擇**編輯**。

   1. 在**登入選項**對話方塊中，輸入下列設定並選擇**確定**：
      + 選取**已啟用**選項按鈕。
      + 在**選項**下，將**登入選項**設定為**只在近端內部網路區域自動登入**。

1. 若要啟用整合式身分驗證，請執行下列步驟：

   1. 在群組政策管理工具中，導覽至您的域並選取**群組政策物件**，開啟您 IAM Identity Center 政策的內容 (右鍵) 選單，然後選擇**編輯**。

   1. 在原則樹狀目錄中，導覽至**使用者設定** > **喜好設定** > **Windows 設定**。

   1. 在 **Windows 設定**清單中，開啟**登錄**的內容 (右鍵) 選單，然後選擇**新增登錄項目**。

   1. 在**新登錄內容**對話方塊中，輸入下列設定並選擇**確定**：  
**Action**  
`Update`  
**Hive**  
`HKEY_CURRENT_USER`  
**路徑**  
`Software\Microsoft\Windows\CurrentVersion\Internet Settings`  
**值名稱**  
`EnableNegotiate`  
**值類型**  
`REG_DWORD`  
**值資料**  
`1`

1. 關閉仍然保持開啟狀態的**群組原則管理編輯器**視窗。

1. 執行下列步驟，將新的原則指派給您的網域：

   1. 在群組原則管理樹狀目錄中，開啟網域的內容 (右鍵) 選單，然後選擇**連結到現有的 GPO**。

   1. 在**群組政策物件**清單中，選取您的 IAM Identity Center 政策，然後選擇**確定**。

這些變更會在用戶端上的群組原則下次更新，或在使用者下次登入之後生效。

## Firefox 的單一登入
<a name="firefox_sso"></a>

若要讓 Mozilla 的 Firefox 瀏覽器支援單一登入，請將您的存取 URL (例如 https://*<別名>*.awsapps.com) 新增至允許單一登入的網站清單。這可手動或透過指令碼自動完成。

**Topics**
+ [手動更新單一登入](#firefox_sso_manual)
+ [自動更新單一登入](#firefox_sso_script)

### 手動更新單一登入
<a name="firefox_sso_manual"></a>

若要在 Firefox 中將您的存取 URL 手動新增至允許的網站清單，請在用戶端電腦上執行下列步驟。

**在 Firefox 中將您的存取 URL 手動新增至允許的網站清單**

1. 開啟 Firefox，然後開啟 `about:config` 頁面。

1. 開啟 `network.negotiate-auth.trusted-uris` 偏好設定，然後將您的存取 URL 新增至網站清單。請使用逗號 (,) 來分隔多個項目。

### 自動更新單一登入
<a name="firefox_sso_script"></a>

身為域管理員，您可以使用指令碼，將存取 URL 新增至網路上所有電腦的 Firefox `network.negotiate-auth.trusted-uris` 使用者偏好設定。如需詳細資訊，請前往 [https://support.mozilla.org/zh-TW/questions/939037](https://support.mozilla.org/en-US/questions/939037)。