本文說明如何使用 Microsoft Active Directory 同盟服務 (AD FS) 和 SAML 同盟,在 Active Directory 環境與 Cloud Identity 或 Google Workspace 帳戶之間設定單一登入。
本文假設您瞭解如何將 Active Directory 身分識別管理功能延伸至 Google Cloud,並且已設定使用者佈建。本文也會假設您擁有可以正常運作的 AD FS 4.0 伺服器,並且在 Windows Server 2016 或更新版本的 Windows Server 上執行。
如要依照本指南操作,必須瞭解 Active Directory Domain Services 與 AD FS。您在 Cloud Identity 或 Google Workspace 中需要具有超級管理員權限的使用者,Active Directory 中也需要具有 AD FS 伺服器管理權限的使用者。
目標
- 設定 AD FS 伺服器,讓 Cloud Identity 或 Google Workspace 能夠使用該伺服器做為身分識別提供者。
- 建立符合 Active Directory 與 Cloud Identity 或 Google Workspace 之間身分的宣告發行原則。
- 設定 Cloud Identity 或 Google Workspace 帳戶,將驗證作業委派給 AD FS。
費用
如果您是使用 Cloud Identity 免費版,按照本文操作將不會使用Google Cloud的任何計費元件。
事前準備
- 確認您的 AD FS 伺服器執行 Windows Server 2016 或更新版本。儘管您也可以使用舊版 Windows Server 與 AD FS 設定單一登入,但必要設定步驟可能與本文的說明不同。
- 確認您瞭解如何將 Active Directory 身分識別管理功能延伸至 Google Cloud。
- 設定 Active Directory 與 Cloud Identity 或 Google Workspace 之間的使用者佈建。
- 考慮在伺服器群設定中設定 AD FS,藉以避免其發生單點故障。啟用單一登入功能之後,AD FS 的可用性會決定使用者是否能夠登入 Google Cloud 控制台。
瞭解單一登入功能
您已使用 Google Cloud Directory Sync 自動建立及維護使用者,並將其生命週期與 Active Directory 的使用者連結在一起。
儘管 GCDS 會佈建使用者帳戶詳細資料,也不會同步處理密碼。每當使用者需要在Google Cloud中進行驗證時,必須將驗證委派回 Active Directory,這是透過使用 AD FS 與安全宣告標記語言 (SAML) 通訊協定完成的。這個步驟可以確保只有 Active Directory 能夠存取使用者憑證,並強制執行任何現有政策或多重驗證 (MFA) 機制。此外,也會在您的內部部署環境與 Google 之間建立單一登入體驗。
如要進一步瞭解單一登入,請參閱「單一登入」
建立 SAML 設定檔
如要使用 AD FS 設定單一登入,請先在 Cloud Identity 或 Google Workspace 帳戶中建立 SAML 設定檔。SAML 設定檔包含與 AD FS 執行個體相關的設定,包括網址和簽署憑證。
之後再將 SAML 設定檔指派給特定群組或機構單位。
如要在 Cloud Identity 或 Google Workspace 帳戶中建立新的 SAML 設定檔,請按照下列步驟操作:
在管理控制台中,前往「使用第三方 IdP 的單一登入 (SSO) 服務」。
依序按一下「第三方單一登入 (SSO) 設定檔」>「新增 SAML 設定檔」。
在「SAML SSO profile」頁面中,輸入下列設定:
- Name (名稱):
AD FS
IdP 實體 ID:
https://ADFS/adfs/services/trust
登入頁面網址:
https://ADFS/adfs/ls/
登出網頁網址:
https://ADFS/adfs/ls/?wa=wsignout1.0
變更密碼網址:
https://ADFS/adfs/portal/updatepassword/
在所有網址中,將
ADFS
替換為 AD FS 伺服器的完整網域名稱。暫時不要上傳驗證憑證。
- Name (名稱):
按一下 [儲存]。
隨即顯示「SAML SSO 設定檔」頁面,內含兩個網址:
- 實體 ID
- ACS 網址
您會在下一節設定 AD FS 時需要這些網址。
設定 AD FS
您需要建立信賴憑證者信任,才能設定 AD FS 伺服器。
建立信賴憑證者信任
建立新的信賴憑證者信任:
- 連線至 AD FS 伺服器,然後開啟 AD FS 管理 MMC 嵌入式管理單元。
- 依序選取「AD FS」>「Relying Party Trusts」。
- 在「動作」窗格中,按一下「新增信賴憑證者信任」。
- 在精靈的「歡迎」頁面中,選取「宣告感知」,然後按一下「開始」。
- 在「選取資料來源」頁面,選取「手動輸入這個信賴憑證者的相關資料」,然後按一下「下一步」。
- 在「指定顯示名稱」頁面中,輸入名稱 (例如
Google Cloud
),然後按一下「下一步」。 - 在「設定憑證」頁面中,按一下「下一步」。
在「設定網址」頁面,選取「啟用 SAML 2.0 WebSSO 通訊協定的支援」,然後輸入 SAML 設定檔中的「ACS 網址」。然後點選「下一步」。
在「設定識別碼」頁面中,新增 SAML 設定檔中的「實體 ID」。
然後點選 [下一步]。
在「Choose access control policy」(選擇存取權控管政策) 頁面中,選擇適當的存取政策,然後按一下「Next」(下一步)。
在 [Ready to Add Trust] (準備新增信任) 頁面,檢查您的設定,然後按一下 [Next] (下一頁)。
在最後一頁,清除「Configure claims issuance policy」(設定此應用程式的宣告發行原則) 核取方塊並關閉精靈。
您會在信賴憑證者信任清單中看見新項目。
設定登出網址
當您讓使用者在多個應用程式中使用單一登入功能時,允許使用者登出多個應用程式很重要:
- 開啟您剛建立的信賴憑證者信任。
- 選取「端點」分頁標籤。
按一下「新增 SAML」,然後設定下列項目:
- Endpoint type (端點):[SAML Logout] (SAML 登出)
- Binding (繫結):[POST]
信任的 URL:
https://ADFS/adfs/ls/?wa=wsignout1.0
將
ADFS
替換為 AD FS 伺服器的完整網域名稱。
按一下 [確定]。
按一下 [OK] (確定) 關閉對話方塊。
設定宣告對應
AD FS 驗證完使用者之後,會發出 SAML 宣告。此宣告可做為驗證已成功完成的證明。聲明必須識別誰已經完成驗證,而這就是 NameID
聲明的目的。
如要啟用 Google 登入功能,將 NameID
與使用者建立關聯,NameID
必須包含該使用者的主要電子郵件地址。根據您在 Active Directory 與 Cloud Identity 或 Google Workspace 之間對應使用者的方式而定,NameID
必須包含來自 Active Directory 使用者的 UPN 或電子郵件地址,並且視需要套用網域替代。
UPN
- 在信賴憑證者信任清單中,選取您剛建立的信任,然後點選「編輯宣告發行原則」。
- 按一下「新增規則」
- 在「新增轉換宣告規則」精靈的「選擇規則類型」頁面中,選取「轉換傳入的宣告」,然後按一下「下一步」。
在「設定宣告規則」頁面中,設定下列項目:
- 宣告規則名稱:
Name Identifier
- 「Incoming claim type」(傳入宣告類型):UPN
- 「Outgoing claim type」(傳出宣告類型):Name ID
- 「傳出名稱 ID 格式」:電子郵件
- 宣告規則名稱:
選取「Pass through all claim values」(傳遞所有聲明值),然後按一下「Finish」(完成)。
按一下「確定」關閉聲明核發政策對話方塊。
UPN:網域替代
- 在信賴憑證者信任清單中,選取您剛建立的信任,然後點選「編輯宣告發行原則」。
- 按一下「新增規則」
- 在「新增轉換宣告規則」精靈的「選擇規則類型」頁面中,選取「轉換傳入的宣告」,然後按一下「下一步」。
在「設定宣告規則」頁面中,設定下列項目:
- 宣告規則名稱:
Name Identifier
- 「Incoming claim type」(傳入宣告類型):UPN
- 「Outgoing claim type」(傳出宣告類型):Name ID
- 「傳出名稱 ID 格式」:電子郵件
- 宣告規則名稱:
選取「Replace incoming claim e-mail suffix with a new e-mail suffix」(以新的電子郵件後置字串取代傳入的聲明電子郵件後置字串),然後設定下列項目:
- 新電子郵件後置字串:Cloud Identity 或 Google Workspace 帳戶使用的網域名稱。
按一下 [Finish] (完成),再按一下 [OK] (確定)。
電子郵件
- 在信賴憑證者信任清單中,選取您剛建立的信任,然後點選「編輯宣告發行原則」。
- 新增規則來查詢電子郵件地址:
- 在對話方塊中,按一下 [Add Rule] (新增規則)。
- 選取 [Send LDAP Attributes as Claims] (以宣告方式傳送 LDAP 屬性),然後按一下 [Next] (下一步)。
- 在下一頁,套用下列設定:
- 宣告規則名稱:
Email address
- Attribute Store (屬性存放區):[Active Directory]
- 宣告規則名稱:
- 為 LDAP 屬性對應清單新增一列:
- 「LDAP Attribute」(LDAP 屬性):E-Mail-Addresses
- 「Outgoing Claim Type」(傳出宣告類型):E-Mail-Address
- 按一下「完成」。
新增其他規則來設定
NameID
:- 按一下「新增規則」
- 在「新增轉換宣告規則」精靈的「選擇規則類型」頁面中,選取「轉換傳入的宣告」,然後按一下「下一步」。
在「設定宣告規則」頁面中,設定下列項目:
- 宣告規則名稱:
Name Identifier
- 傳入宣告類型:電子郵件地址
- 「Outgoing claim type」(傳出宣告類型):Name ID
- 「傳出名稱 ID 格式」:電子郵件
- 宣告規則名稱:
選取「Pass through all claim values」(傳遞所有聲明值),然後按一下「Finish」(完成)。
按一下「確定」關閉聲明核發政策對話方塊。
電子郵件:網域替代
- 在信賴憑證者信任清單中,選取您剛建立的信任,然後點選「編輯宣告發行原則」。
- 新增規則來查詢電子郵件地址:
- 在對話方塊中,按一下 [Add Rule] (新增規則)。
- 選取 [Send LDAP Attributes as Claims] (以宣告方式傳送 LDAP 屬性),然後按一下 [Next] (下一步)。
- 在下一頁,套用下列設定:
- 宣告規則名稱:
Email address
- Attribute Store (屬性存放區):[Active Directory]
- 宣告規則名稱:
- 為 LDAP 屬性對應清單新增一列:
- 「LDAP Attribute」(LDAP 屬性):E-Mail-Addresses
- 「Outgoing Claim Type」(傳出宣告類型):E-Mail-Address
- 按一下「完成」。
新增其他規則來設定
NameID
值:- 按一下「新增規則」
- 在「新增轉換宣告規則」精靈的「選擇規則類型」頁面中,選取「轉換傳入的宣告」,然後按一下「下一步」。
在「設定宣告規則」頁面中,設定下列項目:
- 宣告規則名稱:
Name Identifier
- 傳入宣告類型:電子郵件地址
- 「Outgoing claim type」(傳出宣告類型):Name ID
- 「傳出名稱 ID 格式」:電子郵件
- 宣告規則名稱:
選取「Replace incoming claim e-mail suffix with a new e-mail suffix」(以新的電子郵件後置字串取代傳入的聲明電子郵件後置字串),然後設定下列項目:
- 新電子郵件後置字串:Cloud Identity 或 Google Workspace 帳戶使用的網域名稱。
按一下「完成」,然後按一下「確定」。single-sign-on
匯出 AD FS 符記簽署憑證
AD FS 驗證使用者後,會將 SAML 聲明傳遞至 Cloud Identity 或 Google Workspace。為讓 Cloud Identity 和 Google Workspace 驗證該聲明的完整性和真實性,AD FS 會使用特殊的權杖簽署金鑰簽署聲明,並提供憑證,讓 Cloud Identity 或 Google Workspace 檢查簽章。
從 AD FS 匯出簽署憑證,方法如下:
- 在 AD FS 管理主控台中,依序點選「服務」>「憑證」。
- 在列於 [Token-signing] (符記簽署) 下的憑證上按一下滑鼠右鍵,然後按一下 [View Certificate] (檢視憑證)。
- 選取「詳細資料」分頁標籤。
- 按一下 [Copy to File] (複製到檔案),開啟憑證匯出精靈。
- 在「歡迎使用憑證匯出精靈」頁面中,按一下「下一步」。
- 在「匯出私密金鑰」頁面中,選取「否,不要匯出私密金鑰」。
- 在「匯出檔案格式」頁面中,選取「Base-64 編碼的 X.509 (.CER)」 ,然後按一下「下一步」。
- 在「File to export」(要匯出的檔案) 頁面中,提供本機檔案名稱,然後按一下「Next」(下一步)。
- 按一下「完成」關閉對話方塊。
- 將匯出的憑證複製到您的本機電腦。
完成 SAML 設定檔
您可以使用簽署憑證完成 SAML 設定檔的設定:
返回管理控制台,然後依序前往「安全性」>「驗證」>「使用第三方 IdP 的單一登入 (SSO) 服務」。
開啟先前建立的
AD FS
SAML 設定檔。按一下「IDP 詳細資料」部分,編輯設定。
按一下「上傳憑證」,然後挑選您從 AD FS 匯出的符記簽署憑證。
按一下 [儲存]。
SAML 設定檔已完成,但您仍需指派設定檔。
指派 SAML 設定檔
選取要套用新 SAML 設定檔的使用者:
在管理控制台的「使用第三方 IdP 的單一登入 (SSO) 服務」頁面中, 依序點選「管理單一登入 (SSO) 設定檔指派作業」>「管理」。
在左側窗格中,選取要套用單一登入 (SSO) 設定檔的群組或機構單位。如要為所有使用者套用設定檔,請選取根機構單位。
在右側窗格中,選取「Another SSO profile」(其他 SSO 設定檔)。
在選單中,選取您先前建立的
AD FS - SAML
SSO 設定檔。按一下 [儲存]。
重複上述步驟,將 SAML 設定檔指派給其他群組或機構單位。
測試單一登入
您已完成單一登入設定。您可以檢查 SSO 是否正常運作。
選擇符合下列條件的 Active Directory 使用者:
- 使用者已佈建至 Cloud Identity 或 Google Workspace。
Cloud Identity 使用者沒有超級管理員權限。
擁有超級管理員權限的使用者帳戶一律必須使用 Google 憑證登入,因此不適合用來測試單一登入功能。
開啟新的瀏覽器視窗,然後前往 https://console.cloud.google.com/。
在顯示的 Google 登入頁面上,輸入使用者的電子郵件地址,然後按一下「下一步」。如果您使用網域替代,則必須將替代套用至電子郵件地址。
系統會將您重新導向至 AD FS。如果您設定讓 AD FS 使用表單式驗證,您會看見登入頁面。
輸入 Active Directory 使用者的 UPN 與密碼,然後按一下「登入」。
成功驗證之後,AD FS 會將您重新導向回Google Cloud 控制台。由於這是該使用者第一次登入,系統會要求您接受 Google 服務條款與隱私權政策。
如果您同意條款,請點選 [Accept] (接受)。
系統會將您重新導向至 Google Cloud 主控台,並要求您確認偏好設定,並接受 Google Cloud 服務條款。如果您同意條款,請按一下「是」,然後點選「同意並繼續」。
在左上方,按一下顯示圖片圖示,然後點選 [Sign out] (登出)。
然後系統會將您重新導向至 AD FS 頁面,確認您已成功登出。
如果無法順利登入,您或許可以在 AD FS 管理員記錄中找到其他資訊。
請注意,具有超級管理員權限的使用者不必執行單一登入,因此您仍然可以使用管理控制台驗證或變更設定。
選用:設定網域專屬服務網址的重新導向
從內部入口網站或文件連結至 Google Cloud 控制台時,您可以使用網域專屬的服務網址,提升使用者體驗。
與一般服務網址 (例如 https://console.cloud.google.com/
) 不同,網域專屬服務網址會包含主要網域名稱。未通過驗證的使用者點選特定網域服務網址的連結後,系統會立即將他們重新導向至 AD FS,而不是先顯示 Google 登入頁面。
網域專屬服務網址的範例如下:
Google 服務 | 網址 | 標誌 |
---|---|---|
Google Cloud 控制台 | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://console.cloud.google.com/ |
![]() |
Google 文件 | https://docs.google.com/a/DOMAIN |
![]() |
Google 試算表 | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://sheets.google.com/
|
![]() |
Google 協作平台 | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://slides.google.com/ |
![]() |
Google 雲端硬碟 | https://drive.google.com/a/DOMAIN |
![]() |
Gmail | https://mail.google.com/a/DOMAIN |
![]() |
Google 網路論壇 | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://groups.google.com/ |
![]() |
Google Keep | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://keep.google.com/
|
![]() |
Looker Studio | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://lookerstudio.google.com/ |
![]() |
YouTube | https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://www.youtube.com/
|
![]() |
如要設定網域專屬服務網址,使其重新導向至 AD FS,請按照下列步驟操作:
在管理控制台的「使用第三方 IdP 的單一登入 (SSO) 服務」頁面中,依序點選「網域專屬的服務網址」>「編輯」。
將「自動將使用者重新導向至下列單一登入 (SSO) 設定檔的第三方 IdP」設為「已啟用」。
將「單一登入設定檔」設為
AD FS
。按一下 [儲存]。
選用:設定登入身分確認問題
如果使用者從不明裝置登入,或登入嘗試因其他原因而顯得可疑,Google 登入可能會要求使用者進行額外驗證。登入身分確認問題機制有助於提升安全性,因此建議您啟用這項功能。
如果登入身分確認問題造成太多不便,可以按照下列步驟停用:
- 在管理控制台中,依序點選「安全性」>「驗證」>「登入身分確認問題」。
- 在左側窗格中,選取要停用登入身分確認問題的機構單位。如要為所有使用者停用登入挑戰,請選取根機構單位。
- 在「透過其他單一登入 (SSO) 設定檔登入時,使用者所看到的設定」下方,選取「不要求使用者透過 Google 進行其他驗證」。
- 按一下 [儲存]。
清除所用資源
如果您不想讓機構保持啟用單一登入,請按照下列步驟在 Cloud Identity 或 Google Workspace 中停用單一登入:
在管理控制台中,前往「管理單一登入 (SSO) 設定檔指派作業」。
針對每個設定檔指派作業,執行下列操作:
- 開啟個人資料。
- 如果看到「沿用」按鈕,請按一下「沿用」。如果沒有看到「沿用」按鈕,請選取「無」,然後按一下「儲存」。
返回「使用第三方 IdP 的單一登入 (SSO) 服務」頁面,然後開啟「AD FS」 SAML 設定檔。
點選「刪除」。
如要清除 AD FS 中的設定,請按照下列步驟操作:
- 連線至 AD FS 伺服器,然後開啟 AD FS MMC 嵌入式管理單元。
- 在左側選單的 [Relying Party Trusts] (信賴憑證者信任) 資料夾上按一下滑鼠右鍵。
- 在信賴憑證者信任清單中,在您建立的信賴憑證者信任上按一下滑鼠右鍵,然後點選「刪除」。
- 按一下 [Yes] (是) 以確認刪除。