適用於 Apple 裝置的 Microsoft 企業單一登入外掛程式
適用於 Apple 裝置的 Microsoft 企業 SSO 外掛程式可針對所有支援 Apple 企業單一登入功能的應用程式,為 macOS、iOS 和 iPadOS 上的 Microsoft Entra 帳戶提供單一登入 (SSO)。 此外掛程式可針對您的企業可能依賴但尚未支援最新身分識別程式庫或通訊協定的舊應用程式,提供 SSO。 Microsoft 與 Apple 密切合作來開發這個外掛程式,以提高應用程式的可用性,同時提供最佳的保護。
企業 SSO 外掛程式目前是下列應用程式的內建功能:
- Microsoft Authenticator:iOS、iPadOS
- Microsoft Intune 公司入口網站:macOS
功能
適用於 Apple 裝置的 Microsoft 企業 SSO 外掛程式提供下列優點:
- 它會在支援 Apple 企業 SSO 功能的所有應用程式間,為 Microsoft Entra 帳戶提供 SSO。
- 它可由任何行動裝置管理 (MDM) 解決方案啟用,且裝置和使用者註冊均加以支援。
- 它可將 SSO 延伸至尚未使用 Microsoft 驗證程式庫 (MSAL) 的應用程式。
- 它會將 SSO 延伸至使用 OAuth 2、OpenID Connect 和 SAML 的應用程式。
- 它可與 MSAL 原生整合,在 Microsoft 企業 SSO 外掛程式啟用時為終端使用者提供順暢的原生體驗。
注意
2024 年 5 月,Microsoft 宣佈適用於 macOS 裝置的平台 SSO 已在 Microsoft Entra ID 公開預覽版中推出。
如需詳細資訊,請參閱 macOS 平台單一登入概觀 (預覽)。
需求
使用適用於 Apple 裝置的 Microsoft 企業 SSO 外掛程式:
裝置必須支援並具有已安裝的應用程式,且該應用程式具有適用于 Apple 裝置的 Microsoft 企業 SSO 外掛程式:
- iOS 13.0 和更新版本:Microsoft Authenticator 應用程式
- ipadOS 13.0 和更新版本:Microsoft Authenticator 應用程式
- macOS 10.15 和更新版本:Intune 公司入口網站應用程式
裝置必須在 MDM 中註冊,例如透過 Microsoft Intune。
必須將設定推送至裝置,才能啟用企業 SSO 外掛程式。 Apple 需要此安全性條件約束。
必須允許 Apple 裝置連線到識別提供者 URL 和其本身的 URL,而無須進行額外的攔截。 這表示必須將這些 URL 排除於網路 Proxy、攔截和其他企業系統外。
以下是讓 SSO 外掛程式能夠運作所須允許的最低 URL 集合:
app-site-association.cdn-apple.com
app-site-association.networking.apple
login.microsoftonline.com
(*)login.microsoft.com
(*)sts.windows.net
(*)login.partner.microsoftonline.cn
(*)(**)login.chinacloudapi.cn
(*)(**)login.microsoftonline.us
(*)(**)login-us.microsoftonline.com
(*)(**)config.edge.skype.com
(***)
(*) 只有在 2022 年之前發行的作業系統版本上,才需要允許 Microsoft 網域。 在最新的作業系統版本上,Apple 完全依賴其CDN。
(**) 如果您依賴環境中的網域,則只需要允許主權雲端網域。
(***) 維護與試驗設定服務 (ECS) 的通訊,可確保 Microsoft 能夠及時回應嚴重的 Bug。
Microsoft 企業 SSO 外掛程式依賴 Apple 的企業 SSO 架構。 Apple 的企業 SSO 架構會使用名為相關聯的網域的技術,確保只有經核准的 SSO 外掛程式可用於每個識別提供者。 為了驗證 SSO 外掛程式的身分識別,每個 Apple 裝置都會將網路要求傳送至識別提供者所擁有的端點,並讀取已核准的 SSO 外掛程式的相關資訊。除了直接連線到識別提供者以外,Apple 也針對這項資訊實作了另一項快取。
警告
如果您的組織使用的 Proxy 伺服器會在防止資料遺失或租用戶限制等案例中攔截 SSL 流量,請確認已從 TLS 中斷和檢查 (TLS break-and-inspect) 中排除這些 URL 的流量。 若未能排除這些 URL,將造成用戶端憑證驗證的干擾,進而產生裝置註冊和裝置型條件式存取的問題。 若未將 Apple CDN 網域完全排除於攔截外,SSO 外掛程式將無法穩定運作,且您將經歷間歇性問題,直到您完成此操作。
如果您的組織封鎖這些 URL,使用者可能會看到
1012 NSURLErrorDomain error
、1000 com.apple.AuthenticationServices.AuthorizationError
或1001 Unexpected
之類的錯誤。其他可能需要允許的 Apple URL 分別記載於其支援文章中:在企業網路上使用 Apple 產品。
iOS 作業系統需求
- 裝置上必須安裝 iOS 13.0 或更新版本。
- 您必須在裝置上安裝 Microsoft 應用程式,以提供適用於 Apple 裝置的 Microsoft 企業 SSO 外掛程式。 此應用程式是 Microsoft Authenticator 應用程式。
macOS 需求
- 裝置上必須安裝 macOS 10.15 或更新版本。
- 您必須在裝置上安裝 Microsoft 應用程式,以提供適用於 Apple 裝置的 Microsoft 企業 SSO 外掛程式。 此應用程式是 Intune 公司入口網站應用程式。
啟用 SSO 外掛程式
您可以使用下列資訊,利用 MDM 來啟用 SSO 外掛程式。
Microsoft Intune 設定
如果您使用 Microsoft Intune 作為 MDM 服務,則可以使用內建的設定檔設定來啟用 Microsoft 企業 SSO 外掛程式:
- 設定組態設定檔的 SSO 應用程式外掛程式設定。
- 如果尚未指派設定檔,請將設定檔指派給使用者或裝置群組。
啟用 SSO 外掛程式的設定檔設定,會在下一次裝置使用 Intune 簽入時自動套用至群組的裝置。
其他 MDM 服務的手動設定
如果您未使用適用於 MDM 的 Intune,可以為 Apple 裝置設定可擴充的單一登入設定檔承載。 使用下列參數來設定 Microsoft 企業 SSO 外掛程式及其設定選項。
iOS 設定:
- Extension ID:
com.microsoft.azureauthenticator.ssoextension
- 小組識別碼:(iOS 不需要此欄位)
macOS 設定:
- Extension ID:
com.microsoft.CompanyPortalMac.ssoextension
- 小組識別碼:
UBF8T346G9
一般設定:
- 類型:重新導向
https://login.microsoftonline.com
https://login.microsoft.com
https://sts.windows.net
https://login.partner.microsoftonline.cn
https://login.chinacloudapi.cn
https://login.microsoftonline.us
https://login-us.microsoftonline.com
部署指南
依照下列部署指南,使用您選擇的 MDM 解決方案啟用 Microsoft 企業 SSO 外掛程式:
Intune:
Jamf Pro:
其他 MDM:
更多組態選項
您可以新增更多設定選項,以將 SSO 功能延伸至其他應用程式。
為未使用 MSAL 的應用程式啟用 SSO
SSO 外掛程式可讓任何應用程式參與 SSO,即使不是使用 Microsoft SDK (例如 Microsoft Authentication Library,MSAL) 來開發。
具有下列各項的裝置會自動安裝 SSO 外掛程式:
- 下載 iOS 或 iPadOS 上的 Authenticator 應用程式,或下載 macOS 上的 Intune 公司入口網站應用程式。
- 裝置已向您的組織註冊 MDM。
您的組織可能會在多重要素驗證、無密碼驗證和條件式存取等案例中使用 Authenticator 應用程式。 藉由使用 MDM 提供者,您可以為應用程式開啟 SSO 外掛程式。 Microsoft 可讓您輕鬆使用 Microsoft Intune 設定外掛程式。 允許清單可用來將這些應用程式設定為使用 SSO 外掛程式。
重要
Microsoft 企業 SSO 外掛程式僅支援使用原生 Apple 網路技術或 Web 檢視的應用程式。 不支援隨附自己的網路層實作的應用程式。
使用下列參數,為未使用 MSAL 的應用程式設定 Microsoft 企業 SSO 外掛程式。
重要
您無須將使用 Microsoft 驗證程式庫的應用程式新增至此允許清單。 這些應用程式依預設會參與 SSO。 Microsoft 建置的應用程式大多都會使用 Microsoft 驗證程式庫。
針對所有受管理的應用程式啟用 SSO
- 金鑰:
Enable_SSO_On_All_ManagedApps
- 類型:
Integer
- 值:1 或 0。 此值預設為 0。
當此旗標為 On (其值設定為 1
) 時,不在 AppBlockList
中的所有 MDM 管理應用程式都可能會參與 SSO。
針對特定應用程式啟用 SSO
- 金鑰:
AppAllowList
- 類型:
String
- 值:允許參與 SSO 之應用程式的應用程式套件組合識別碼清單 (以逗號分隔)。
- 範例:
com.contoso.workapp, com.contoso.travelapp
注意
Safari 和 Safari View 服務預設為可參與 SSO。 藉由在 AppBlockList 中新增 Safari 和 Safari View Service 的套件組合識別碼,可以設定為 不參與 SSO。 iOS 套件組合識別碼:[com.apple.mobilesafari, com.apple.SafariViewService] macOS BundleID : [com.apple.Safari]
針對具有特定套件組合識別碼首碼的所有應用程式啟用 SSO
- 金鑰:
AppPrefixAllowList
- 類型:
String
- 值:允許參與 SSO 之應用程式的應用程式套件組合識別碼首碼清單 (以逗號分隔)。 此參數可讓以特定前置詞開頭的所有應用程式參與 SSO。 iOS 的預設值會設定為
com.apple.
,這會為所有 Apple 應用程式啟用 SSO。 macOS 的預設值會設定為com.apple.
和com.microsoft.
,這會為所有 Apple 和 Microsoft 應用程式啟用 SSO。 管理員可以覆寫預設值或將應用程式新增至AppBlockList
,以防止這些應用程式參與 SSO。 - 範例:
com.contoso., com.fabrikam.
針對特定應用程式停用 SSO
- 金鑰:
AppBlockList
- 類型:
String
- 值:不允許參與 SSO 之應用程式的應用程式套件組合識別碼清單 (以逗號分隔)。
- 範例:
com.contoso.studyapp, com.contoso.travelapp
若要停用 Safari 或 Safari View Service 的 SSO,您必須將其套件組合識別碼新增至 AppBlockList
,以明確地執行此動作:
- iOS:
com.apple.mobilesafari
,com.apple.SafariViewService
- macOS:
com.apple.Safari
針對特定應用程式透過 cookie 啟用 SSO
某些具有進階網路設定的 iOS 應用程式可能會在啟用 SSO 時遇到非預期的問題。 例如,您可能會看到錯誤,指出已取消或中斷網路要求。
如果您的使用者在登入應用程式之後仍遇到問題,請嘗試將它新增至 AppCookieSSOAllowList
來解決問題。
注意
透過 Cookie 機制使用 SSO 有嚴重限制。 例如,它與 Microsoft Entra ID 條件式存取原則不相容,且僅支援單一帳戶。 除非您明確建議Microsoft工程或支援小組針對一組決定與一般 SSO 不相容的應用程式,否則您不應該使用這項功能。
- 金鑰:
AppCookieSSOAllowList
- 類型:
String
- 值:允許參與 SSO 之應用程式的應用程式套件組合識別碼首碼清單 (以逗號分隔)。 以列出的首碼開頭的所有應用程式將可參與 SSO。
- 範例:
com.contoso.myapp1, com.fabrikam.myapp2
其他需求:若要使用 AppCookieSSOAllowList
AppPrefixAllowList
來啟用應用程式的 SSO,您也必須新增其套件組合識別碼首碼。
請僅針對具有未預期登入失敗的應用程式嘗試此設定。 此索引鍵僅供 iOS 應用程式使用,不適用於 macOS 應用程式。
索引鍵的摘要
機碼 | 類型 | 值 |
---|---|---|
Enable_SSO_On_All_ManagedApps |
整數 | 1 若要為所有受管理的應用程式啟用 SSO,請 0 停用所有受管理應用程式的 SSO。 |
AppAllowList |
String (逗號分隔清單) |
允許參與 SSO 的應用程式套件組合識別碼。 |
AppBlockList |
String (逗號分隔清單) |
不允許參與 SSO 的應用程式套件組合識別碼。 |
AppPrefixAllowList |
String (逗號分隔清單) |
允許參與 SSO 的應用程式套件組合識別碼首碼。 iOS 的預設值會設定為 com.apple. ,這會為所有 Apple 應用程式啟用 SSO。 macOS 的預設值會設定為 com.apple. 和 com.microsoft. ,這會為所有 Apple 和 Microsoft 應用程式啟用 SSO。 開發人員、客戶或管理員可以覆寫預設值或將應用程式新增至 AppBlockList ,以防止這些應用程式參與 SSO。 |
AppCookieSSOAllowList |
String (逗號分隔清單) |
允許參與 SSO 的應用程式套件組合識別碼前置詞,但使用特殊的網路設定,並在使用其他設定的 SSO 時遇到問題。 您加入的 AppCookieSSOAllowList 應用程式也必須新增至 AppPrefixAllowList 。 請注意,此索引鍵僅供 iOS 應用程式使用,不適用於 macOS 應用程式。 |
適用於常見案例的設定
案例:我想要針對大部分受管理的應用程式啟用 SSO,但無法為所有應用程式啟用 SSO。
機碼 值 Enable_SSO_On_All_ManagedApps
1
AppBlockList
套件組合識別碼 (您要防止參與 SSO 之應用程式的逗號分隔清單)。 案例我想要停用適用於 Safari 的 SSO (預設為啟用),但為所有受控應用程式啟用 SSO。
機碼 值 Enable_SSO_On_All_ManagedApps
1
AppBlockList
您要防止參與 SSO 之 Safari 應用程式的套件組合識別碼 (逗號分隔清單)。 - 針對 iOS:
com.apple.mobilesafari
,com.apple.SafariViewService
- 針對 macOS:
com.apple.Safari
- 針對 iOS:
案例:我想要在所有受管理的應用程式和少數未受管理的應用程式上啟用 SSO,但針對一些其他應用程式停用 SSO。
機碼 值 Enable_SSO_On_All_ManagedApps
1
AppAllowList
您要啟用以供 SSO 參與的應用程式套件組合識別碼 (以逗號分隔)。 AppBlockList
套件組合識別碼 (您要防止參與 SSO 之應用程式的逗號分隔清單)。
在 iOS 裝置上尋找應用程式套件組合識別碼
Apple 不提供從 App Store 取得套件組合識別碼的簡單方法。 若要取得您想要用於 SSO 之應用程式的套件組合識別碼,最簡單的方法是詢問廠商或應用程式開發人員。 如果該選項無法使用,您可以使用 MDM 設定來尋找套件組合識別碼:
在 MDM 設定中暫時啟用下列旗標:
- 金鑰:
admin_debug_mode_enabled
- 類型:
Integer
- 值:1 或 0。
- 金鑰:
當此旗標開啟時,請登入您想要知道套件組合識別碼的裝置上的 iOS 應用程式。
在 Authenticator 應用程式中,選取 [說明] > [傳送記錄] > [檢視記錄]。
在記錄檔中,尋找下列程式程式碼:
[ADMIN MODE] SSO extension has captured following app bundle identifiers
。 這一行應該會擷取 SSO 延伸模組可看見的所有應用程式套件組合識別碼。
使用套件組合識別碼來設定應用程式的 SSO。 完成之後,請停用管理員模式。
允許使用者從未使用 MSAL 和 Safari 瀏覽器的應用程式登入
根據預設,在取得新權杖期間有另一個使用 MSAL 的應用程式呼叫 Microsoft 企業 SSO 外掛程式時,此外掛程式就會取得共用認證。 根據設定,由未使用 MSAL 的應用程式呼叫時,Microsoft 企業 SSO 外掛程式也可以取得共用認證。
當您啟用 browser_sso_interaction_enabled
旗標時,未使用 MSAL 的應用程式可以執行初始啟動載入,並取得共用認證。 Safari 瀏覽器也可以進行初始啟動載入並取得共用認證。
如果 Microsoft 企業 SSO 外掛程式尚無共用認證,則在每次從 Safari 瀏覽器、ASWebAuthenticationSession、SafariViewController 或另一個允許的原生應用程式內的 Microsoft Entra URL 要求登入時,都會嘗試取得認證。
使用這些參數來啟用旗標:
- 金鑰:
browser_sso_interaction_enabled
- 類型:
Integer
- 值:1 或 0。 此值預設為 1。
iOS 和 macOS 都需要此設定,讓 Microsoft 企業 SSO 外掛程式在所有應用程式中都能提供一致的體驗。 依預設會啟用此設定,且只有在終端使用者無法使用其認證登入時,才應該停用此設定。
停用 OAuth 2 應用程式提示
如果應用程式提示使用者登入,即使 Microsoft 企業 SSO 外掛程式適用暹裝置上的其他應用程式,應用程式可能會略過通訊協定層的 SSO。 這類應用程式也會忽略共用的認證,因為外掛程式會藉由將認證附加至允許的應用程式所提出的網路要求,來提供 SSO。
這些參數會指定 SSO 延伸模組是否應該防止原生和 Web 應用程式在通訊協定層略過 SSO,以及強制將登入提示顯示給使用者。
若要在裝置上的所有應用程式中使用一致的 SSO 體驗,建議您為未使用 MSAL 的應用程式啟用其中一項設定。 只有在使用者看到非預期的提示時,才應該為使用 MSAL 的應用程式啟用此功能。
未使用 Microsoft 驗證程式庫的應用程式:
停用應用程式提示,並顯示帳戶選擇器:
- 金鑰:
disable_explicit_app_prompt
- 類型:
Integer
- 值:1 或 0。 此值預設為 1,此預設設定會減少提示。
停用應用程式提示,並自動從相符的 SSO 帳戶清單中選取帳戶:
- 金鑰:
disable_explicit_app_prompt_and_autologin
- 類型:
Integer
- 值:1 或 0。 此值預設為 0。
使用 Microsoft 驗證程式庫的應用程式:
如果應用程式保護原則正在使用中,則不建議使用下列設定。
停用應用程式提示,並顯示帳戶選擇器:
- 金鑰:
disable_explicit_native_app_prompt
- 類型:
Integer
- 值:1 或 0。 此值預設為 0。
停用應用程式提示,並自動從相符的 SSO 帳戶清單中選取帳戶:
- 金鑰:
disable_explicit_native_app_prompt_and_autologin
- 類型:
Integer
- 值:1 或 0。 此值預設為 0。
非預期的 SAML 應用程式提示
如果應用程式提示使用者登入,即使 Microsoft 企業 SSO 外掛程式適用暹裝置上的其他應用程式,應用程式可能會略過通訊協定層的 SSO。 如果應用程式使用 SAML 通訊協定,Microsoft 企業 SSO 外掛程式將無法為應用程式提供 SSO。 應用程式廠商應該會收到此行為的相關通知,並在其應用程式中變更為不要略過 SSO。
為已啟用 MSAL 的應用程式變更 iOS 體驗
使用 MSAL 的應用程式一律會以原生方式叫用 SSO 延伸模組,以進行互動式要求。 在某些 iOS 裝置上,此行為可能不適當。 具體而言,如果使用者也需要在 Microsoft Authenticator 應用程式內完成多重要素驗證,以互動方式重新導向至該應用程式可能會提供更好的使用者體驗。
此行為可使用 disable_inapp_sso_signin
旗標來設定。 此旗標啟用時,使用 MSAL 的應用程式將會重新導向至 Microsoft Authenticator 應用程式以進行所有互動式要求。 此旗標不會影響來自這些應用程式的無訊息權杖要求、未使用 MSAL 的應用程式或 macOS 應用程式的行為。 依預設會停用此旗標。
- 金鑰:
disable_inapp_sso_signin
- 類型:
Integer
- 值:1 或 0。 此值預設為 0。
設定 Microsoft Entra 裝置註冊
對於 Intune 管理的裝置,Microsoft 企業 SSO 外掛程式可在使用者嘗試存取資源時執行Microsoft Entra 裝置註冊。 這可讓使用者體驗更加精簡。
使用下列設定,透過 Microsoft Intune 啟用 iOS/iPadOS 的 Just in Time 註冊:
- 金鑰:
device_registration
- 類型:
String
- 值:{{DEVICEREGISTRATION}}
在這裡深入了解 Just In Time 註冊。
條件式存取原則和密碼變更
Microsoft Apple 裝置的企業 SSO 外掛程式與多種 Microsoft Entra 條件式存取原則和密碼變更事件相容。 必須啟用 browser_sso_interaction_enabled
才能達到相容性。
相容的事件和原則記載於以下幾節中:
密碼變更和權杖撤銷
當使用者重設其密碼時,將會撤銷之前發行的所有權杖。 如果使用者嘗試在密碼重設事件之後存取資源,通常需要在每個應用程式中再次登入。 Microsoft 企業 SSO 外掛程式啟用時,系統會要求使用者登入第一個參與 SSO 的應用程式。 Microsoft 企業 SSO 外掛程式會在目前作用中的應用程式上方顯示其本身的使用者介面。
Microsoft Entra 多重要素驗證
多重要素驗證程序指的是,使用者在登入過程中經提示而提供其他形式的識別,例如,在其行動電話上輸入代碼或提供指紋掃描。 您可以為特定資源啟用多重要素驗證。 Microsoft 企業 SSO 外掛程式啟用時,系統會要求使用者在第一個需要多重要素驗證的應用程式中執行該驗證。 Microsoft 企業 SSO 外掛程式會在目前作用中的應用程式上方顯示其本身的使用者介面。
使用者登入頻率
登入頻率會定義使用者嘗試存取資源時收到重新登入要求之前的時段。 如果使用者在此時段經過後嘗試於各種應用程式中存取資源,通常需要在這些應用程式中再次登入。 Microsoft 企業 SSO 外掛程式啟用時,系統會要求使用者登入第一個參與 SSO 的應用程式。 Microsoft 企業 SSO 外掛程式會在目前作用中的應用程式上方顯示其本身的使用者介面。
使用 Intune 進行簡化設定
您可以使用 Intune 作為 MDM 服務,以簡化 Microsoft 企業 SSO 外掛程式的設定。 例如,您可以使用 Intune 來啟用外掛程式,並將舊的應用程式新增至允許清單,以取得 SSO。
如需詳細資訊,請參閱使用 Intune 部署適用於 Apple 裝置的 Microsoft 企業 SSO 外掛程式。
在您的應用程式中使用 SSO 外掛程式
適用於 Apple 裝置版本1.1.0 和更新版本的 MSAL 支援 Apple 裝置的 Microsoft 企業 SSO 外掛程式。 這是新增 Microsoft 企業 SSO 外掛程式支援的建議方式。 如此可確保您取得 Microsoft 身分識別平台的完整功能。
如果您要建立適用於前線工作者案例的應用程式,請參閱適用於 iOS 裝置的共用裝置模式,以取得安裝資訊。
了解 SSO 外掛程式的運作方式
Microsoft 企業 SSO 外掛程式依賴 Apple 企業 SSO 架構。 加入架構的身分識別提供者可以攔截其網域的網路流量,並增強或變更這些要求的處理方式。 例如,SSO 外掛程式可能會顯示更多 UI,以安全地收集終端使用者認證、要求 MFA,或以無訊息方式提供權杖給應用程式。
原生應用程式也可以執行自訂作業,並直接與 SSO 外掛程式進行通訊。 如需詳細資訊,請參閱此 2019 Apple 全球開發人員會議影片。
提示
閱讀 Apple 裝置的 SSO 疑難排解指南,深入了解 SSO 外掛程式的運作方式,以及如何對 Microsoft 企業 SSO 延伸模組進行疑難排解。
使用 MSAL 的應用程式
適用於 Apple 裝置版本 1.1.0 和更新版本的 MSAL 可針對公司和學校帳戶,以原生方式支援 Apple 裝置的 Microsoft 企業 SSO 外掛程式。
如果您遵循所有建議的步驟 ,並使用預設的重新導向 URI 格式,就不需要任何特殊設定。 在具有 SSO 外掛程式的裝置上,MSAL 會自動針對所有互動式和無訊息權杖要求叫用。 同時也會叫用以進行帳戶列舉和帳戶移除作業。 由於 MSAL 會執行依賴自訂作業的原生 SSO 外掛程式通訊協定,因此,此設定可為終端使用者提供最順暢的原生體驗。
在 iOS 和 iPadOS 裝置上,如果未由 MDM 啟用 SSO 外掛程式,但裝置上有 Microsoft Authenticator 應用程式,MSAL 會改為針對任何互動式權杖要求使用 Authenticator 應用程式。 Microsoft 企業 SSO 外掛程式會與 Authenticator 應用程式共用 SSO。
不使用 MSAL 的應用程式
如果系統管理員將應用程式新增至允許清單,未使用 MSAL 的應用程式仍可獲得 SSO。
只要滿足下列條件,您就不需要變更這些應用程式中的程式碼:
- 應用程式會使用 Apple 架構來執行網路要求。 例如,這些架構包含 WKWebView 和 NSURLSession。
- 應用程式會使用標準通訊協定與 Microsoft Entra ID 進行通訊。 例如,這些通訊協定包括 OAuth 2、SAML 和 Web 服務同盟。
- 應用程式不會在原生 UI 中收集純文字使用者名稱和密碼。
在此情況下,當應用程式建立網路要求並開啟網頁瀏覽器來登入使用者時,就會提供 SSO。 當使用者重新導向至 Microsoft Entra 登入 URL 時,SSO 外掛程式會驗證 URL,並檢查該 URL 的 SSO 認證。 如果找到認證,SSO 外掛程式會將其傳至 Microsoft Entra ID,以授權應用程式完成網路要求,而不要求使用者輸入認證。 此外,如果 Microsoft Entra ID 已知裝置,SSO 外掛程式會傳遞裝置憑證來滿足以裝置為基礎的條件式存取檢查。
為了支援非 MSAL 應用程式的 SSO,SSO 外掛程式會執行類似於主要重新整理權杖中所述之 Windows 瀏覽器外掛程式的通訊協定。
相較於以 MSAL 為基礎的應用程式,SSO 外掛程式更能以透明的方式用於非 MSAL 應用程式。 它會整合應用程式提供的現有瀏覽器登入體驗。
終端使用者會看到熟悉的體驗,而不需要在每個應用程式中重新登入。 例如,SSO 外掛程式不會顯示原生帳戶選擇器,而是會將 SSO 工作階段新增至網頁型帳戶選擇器體驗。
裝置身分識別金鑰儲存體即將進行的變更
2024 年 3 月的公告指出,Microsoft Entra ID 將不再使用 Apple 鑰匙圈來儲存裝置身分識別金鑰。 從 2025 年第 3 季開始,所有新的裝置註冊都將使用 Apple 的安全隔離區。 無法選擇退出此儲存位置。
應用程式與 MDM 的整合如須透過鑰匙圈來存取 Workplace Join 金鑰,必須開始使用 MSAL 和企業 SSO 外掛程式,以確保能夠與 Microsoft 身分識別平台相容。
啟用以安全隔離區為基礎的裝置身分識別金鑰儲存體
如果您想要在以安全隔離區為基礎的裝置身分識別金鑰儲存體成為強制使用之前加以啟用,您可以將下列延伸模組資料屬性新增至 Apple 裝置的 MDM 組態設定檔。
注意
若要讓此旗標生效,必須將其套用至新的註冊。 已註冊的裝置若未重新註冊,將不受影響。
- 金鑰:
use_most_secure_storage
- 類型:
Boolean
- 值:True
下列螢幕擷取畫面顯示在 Microsoft Intune 中啟用安全隔離區的組態頁面和設定。
使用以安全隔離區為基礎的裝置身分識別辨識應用程式不相容之處
啟用以安全隔離區為基礎的儲存體之後,可能會遇到錯誤訊息,建議您設定裝置以取得存取權。 此錯誤訊息指出應用程式無法辨識裝置的受控狀態,且與新的金鑰儲存位置不相容。
此錯誤顯示在 Microsoft Entra ID 登入記錄中,隨附下列詳細資料:
- 登入錯誤碼:
530003
- 失敗原因:
Device is required to be managed to access this resource.
如果您在測試期間看到此錯誤訊息,請先確定您已成功啟用 SSO 擴充功能,並已安裝任何必要的應用程式特定擴充功能 (例如 Microsoft Single Sign On for Chrome)。 如果您繼續看到此訊息,建議您連絡應用程式的廠商,以通知他們應用程式與新的儲存位置不相容。
受影響的案例
下列清單包含一些受這些變更影響的常見案例。 根據經驗法則,任何須透過 Apple 的金鑰鏈來存取裝置身分識別成品的應用程式,都將受到影響。
這並非詳盡清單,我們建議應用程式的取用者和廠商均應測試其軟體是否與這個新的資料存放區相容。
Chrome 中已登錄/已註冊的裝置條件式存取原則支援
若要在 Google Chrome 中啟用以安全記憶體保護區為基礎的儲存,以支援裝置條件式存取原則,必須安裝並啟用 Microsoft 單一登入延伸模組。
另請參閱
了解 iOS 裝置的共用裝置模式。
了解如何對 Microsoft 企業 SSO 延伸模組進行疑難排解。