單一登入安全性
單一登入
iOS 和 iPadOS 支援透過單一登入(SSO)對企業網路進行認證。SSO 搭配 Kerberos 型網路使用,針對使用者獲授權存取的服務對使用者進行認證。SSO 可用於各種網路活動,從安全的 Safari 區段到第三方的 App。同時還支援憑證式認證(例如 PKINIT)。
macOS 支援使用 Kerberos 對企業網路進行認證。App 可使用 Kerberos 來針對使用者獲授權存取的服務對使用者進行認證。Kerberos 也可用於各種網路活動,例如安全 Safari 作業階段、網路檔案系統驗證及第三方 App。支援憑證式認證,但是需要 App 採用開發者 API。
iOS、iPadOS 和 macOS SSO 使用 SPNEGO 代號和 HTTP Negotiate 通訊協定,與 Kerberos 型認證閘道和支援 Kerberos 票證的 Windows 整合式驗證系統配合使用。SSO 的支援以開放原始碼 Heimdal 專案為基礎。
iOS、iPadOS 和 macOS 支援以下加密類型:
AES-128-CTS-HMAC-SHA1-96
AES-256-CTS-HMAC-SHA1-96
DES3-CBC-SHA1
ARCFOUR-HMAC-MD5
Safari 支援 SSO,且使用標準 iOS 和 iPadOS 網路連線 API 的第三方 App 也可進行設定來使用。為了設定 SSO,iOS 和 iPadOS 支援設定描述檔的承載資料,允許行動裝置管理(MDM)解決方案向下推播必要的設定。其中包括:設定使用者主要名稱(即 Active Directory 使用者帳號)和 Kerberos 領域設定,以及設定應允許哪些 App 和 Safari Web URL 使用 SSO。
可延伸的單一登入功能
App 開發者可使用 SSO 延伸功能提供自己的單一登入實作。當原生或 Web App 需要使用某些身分提供者以進行使用者認證時,系統會叫用 SSO 延伸功能。開發者可提供兩種類型的延伸功能:重新導向至 HTTPS 的延伸功能,以及使用挑戰/回應機制(例如 Kerberos)的延伸功能。這讓可延伸的單一登入功能可支援 OpenID、OAuth、SAML2 和 Kerberos 認證架構。SSO 延伸功能也藉由採用原生 SSO 通訊協定(可在 macOS 登入期間擷取 SSO 代號)來支援 macOS 認證。
若要使用單一登入延伸功能,App 可以使用認證服務 API,也可依賴作業系統提供的 URL 攔截機制。WebKit 和 CFNetwork 提供攔截層,以便為任何原生或 WebKit App 提供順暢的單一登入支援。為了叫用單一登入延伸功能,必須透過行動裝置管理(MDM)描述檔安裝管理者提供的設定。除此之外,重新導向類型的延伸功能必須使用「相關聯的網域」承載資料,證明其支援的身分伺服器知悉其存在。
隨作業系統提供的唯一延伸功能為 Kerberos SSO 延伸功能。