Microsoft Entra 無縫單一登入:常見問題集

在本文中,我們會解決有關 Microsoft Entra 無縫單一登入 (無縫 SSO) 的常見問題。 請隨時回來查看新內容。

無縫 SSO 可搭配使用哪些登入方法

無縫 SSO 可以與密碼雜湊同步處理傳遞驗證登入方法合併使用。 不過,此功能無法與 Active Directory 同盟服務 (ADFS) 搭配使用。

無縫 SSO 是免費功能嗎?

無縫 SSO 是免費功能,使用時不需要任何付費版本的 Microsoft Entra ID。

Microsoft Azure 德國雲端和 Microsoft Azure Government 雲端中是否提供無縫 SSO?

無縫 SSO 適用於 Azure Government 雲端。 如需詳細資訊,請參閱 Azure Government 的混合式身分識別考量

哪些應用程式會利用無縫 SSO 的 `domain_hint` 或 `login_hint` 參數功能?

資料表有一份應用程式清單,可將這些參數傳送至 entra ID Microsoft。 此動作會使用無縫 SSO 為使用者提供無訊息登入體驗:

應用程式名稱 應用程式 URL
存取面板 https://myapps.microsoft.com/contoso.com
網路版 Outlook https://outlook.office365.com/contoso.com
Office 365 入口網站 https://portal.office.com?domain_hint=contoso.com, https://www.office.com?domain_hint=contoso.com

此外,如果使用者將登入要求傳送至 Microsoft 設定為租用戶的 Entra 端點,則使用者會獲得無訊息登入體驗,亦即 https://login.microsoftonline.com/contoso.com/<..> 或 https://login.microsoftonline.com/<tenant_ID>/<..> - 而不是 Microsoft Entra 通用端點,亦即 https://login.microsoftonline.com/common/<...>。 資料表有一份應用程式清單,可提出這些類型的登入要求。

應用程式名稱 應用程式 URL
SharePoint Online https://contoso.sharepoint.com
Microsoft Entra 系統管理中心 https://portal.azure.com/contoso.com

在上表中,請以您的網域名稱取代 "contoso.com",以連至您租用戶的正確應用程式 URL。

如果想要將無訊息登入使用在其他應用程式上,請以意見反應區段告知。

無縫 SSO 是否支援「替代識別碼」而不是「userPrincipalName」作為使用者名稱?

是。 無縫 SSO 支援在 Microsoft Entra Connect 中設定為使用者名稱 Alternate ID,如 這裡 所示。 並非所有 Microsoft 365 應用程式都支援 Alternate ID。 請參閱支援陳述式的特定應用程式文件。

Microsoft Entra join 和無縫 SSO 所提供的單一登入體驗有何差異?

如果其裝置已向 Microsoft Entra ID 註冊,Microsoft Entra join 會為使用者提供 SSO。 這些裝置不一定要加入網域。 提供 SSO 時,使用的是「主要重新整理權杖」(或稱 PRT),而不是 Kerberos。 在 Windows 10 裝置上可獲得最佳使用者體驗。 SSO 在 Microsoft Edge 瀏覽器上會自動執行。 在 Chrome 上則藉由使用瀏覽器擴充功能也能運作。

您可以在租用戶上使用 Microsoft Entra join 和無縫 SSO。 這兩個功能是互補的。 如果開啟這兩項功能,則來自 Microsoft Entra join 的 SSO 優先於無縫 SSO。

我想要使用 Microsoft Entra ID 註冊非 Windows 10 裝置,而不要使用 AD FS。 我可以改為使用無縫 SSO 嗎?

是,此案例需要 2.1 版或更新版本的加入工作場所用戶端

如何才能變換 `AZUREADSSO` 電腦帳戶的 Kerberos 解密金鑰?

請務必經常變換在內部部署 AD 樹系中建立的 AZUREADSSO 電腦帳戶 (代表 Microsoft Entra ID) 的 Kerberos 解密金鑰。

重要

強烈建議您使用 Update-AzureADSSOForest Cmdlet,至少每 30 天 變換 Kerberos 解密金鑰。 使用 Update-AzureADSSOForest Cmdlet 時,請確定您 不會 每個樹系多次執行 Update-AzureADSSOForest 命令。 否則,此功能會停止運作,直到使用者的 Kerberos 票證過期並由您的內部部署 Active Directory 重新發出為止。

請遵循您在內部部署伺服器上執行Microsoft Entra Connect 的下列步驟:

注意

您需要網域管理員和混合式身分識別系統管理員認證,才能執行這些步驟。 如果您不是網域管理員,而且已由網域系統管理員指派權限,您應該呼叫 Update-AzureADSSOForest -OnPremCredentials $creds -PreserveCustomPermissionsOnDesktopSsoAccount

步驟 1: 取得已啟用無縫 SSO 的 AD 樹系清單

  1. 首先,下載並安裝 Azure AD PowerShell
  2. 瀏覽至 $env:programfiles"\Microsoft Azure Active Directory Connect" 資料夾。
  3. 使用此命令匯入順暢 SSO PowerShell 模組:Import-Module .\AzureADSSO.psd1
  4. 以系統管理員身分執行 PowerShell。 在 PowerShell 中,呼叫 New-AzureADSSOAuthenticationContext。 此命令應該會提供彈出視窗,以輸入租用戶的混合式身分識別系統管理員登入資訊。
  5. 呼叫 Get-AzureADSSOStatus | ConvertFrom-Json。 此命令提供 AD 樹系中已啟用此功能的清單 (查看「網域」清單)。

步驟 2。 在已設定 Kerberos 解密金鑰的每個 AD 樹系上更新該金鑰

  1. 呼叫 $creds = Get-Credential。 出現提示時,輸入預定 Azure AD 樹系的網域系統管理員認證。

注意

您必須以 SAM 帳戶名稱格式 (contoso\johndoe 或 contoso.com\johndoe) 輸入網域系統管理員認證使用者名稱。 我們會利用使用者名稱的網域部分,使用 DNS 來尋找網域系統管理員的網域控制站。

注意

使用的網域系統管理員帳戶不得為「受保護的使用者」群組的成員。 如果是,作業就會失敗。

  1. 呼叫 Update-AzureADSSOForest -OnPremCredentials $creds。 此命令會更新此特定 AD 樹系中 AZUREADSSO 電腦帳戶的 Kerberos 解密金鑰,並且在 Microsoft Entra ID 中更新它。

  2. 針對您已設定此功能的每個 AD 樹系,重複上述步驟。

注意

如果您要更新 Microsoft Entra Connect 以外的樹系,請確定可以連線到通用類別目錄伺服器 (TCP 3268 和 TCP 3269)。

重要

這不需要在預備模式中執行 Microsoft Entra Connect 的伺服器上完成。

如何停用無縫 SSO?

步驟 1: 在租用戶上停用功能

選項 A:使用 Microsoft Entra Connect 來停用

  1. 執行 Microsoft Entra Connect,選擇 [變更使用者登入] 頁面,然後按一下 [下一步]
  2. 取消勾選 [啟用單一登入] 選項。 繼續執行精靈。

完成精靈之後,您的租用戶上會停用無縫 SSO。 但是,您會在畫面上看到一個包含以下內容的訊息:

「現在已停用單一登入,但還有其他手動步驟要執行,才能完成清除。 深入了解"

若要完成清除程序,請遵循您在運行 Microsoft Entra Connect 的內部部署伺服器上執行的步驟 2 和 3。

選項 B:使用 PowerShell 來停用

在您要執行的內部部署伺服器上執行下列步驟,Microsoft Entra Connect:

  1. 首先,下載並安裝 Azure AD PowerShell
  2. 瀏覽至 $env:ProgramFiles"\Microsoft Azure Active Directory Connect" 資料夾。
  3. 使用此命令匯入順暢 SSO PowerShell 模組:Import-Module .\AzureADSSO.psd1
  4. 以系統管理員身分執行 PowerShell。 在 PowerShell 中,呼叫 New-AzureADSSOAuthenticationContext。 此命令應該會提供彈出視窗,以輸入租用戶的混合式身分識別系統管理員登入資訊。
  5. 呼叫 Enable-AzureADSSO -Enable $false

此時會停用無縫 SSO,但如果您想要啟用無縫 SSO,網域仍會維持設定狀態。 如果想要完全移除無縫 SSO 設定中的網域,請在完成上述步驟 5 之後,呼叫下列 Cmdlet:Disable-AzureADSSOForest -DomainFqdn <fqdn>

重要

使用 PowerShell 停用無縫 SSO 並不會變更 Microsoft Entra Connect 中的狀態。 無縫 SSO 會在 [變更使用者登入] 頁面中顯示為已啟用。

注意

如果您沒有 Microsoft Entra Connect 同步伺服器,則可以下載並執行初始安裝。 這不會設定伺服器,但會解壓縮停用 SSO 所需的必要檔案。 MSI 安裝完成之後,請關閉 Microsoft Entra Connect 精靈,然後執行步驟以使用 PowerShell 停用無縫 SSO。

步驟 2: 取得已啟用無縫 SSO 的 AD 樹系清單

如果您已使用 Microsoft Entra Connect 停用無縫 SSO,請遵循工作 1 到 4。 如果您已改為使用 PowerShell 停用無縫 SSO,請跳至工作 5。

  1. 首先,下載並安裝 Azure AD PowerShell
  2. 瀏覽至 $env:ProgramFiles"\Microsoft Azure Active Directory Connect" 資料夾。
  3. 使用此命令匯入順暢 SSO PowerShell 模組:Import-Module .\AzureADSSO.psd1
  4. 以系統管理員身分執行 PowerShell。 在 PowerShell 中,呼叫 New-AzureADSSOAuthenticationContext。 此命令應該會提供彈出視窗,以輸入租用戶的混合式身分識別系統管理員登入資訊。
  5. 呼叫 Get-AzureADSSOStatus | ConvertFrom-Json。 此命令會提供已啟用這項功能的 AD 樹系清單 (查看 [網域] 清單)。

步驟 3: 從您看到的每個列出 AD 樹系,手動刪除 AZUREADSSO 電腦帳戶。

下一步