SSPI
此條目翻譯自其他語言維基百科,需要相關領域的編者協助校對翻譯。 |
安全支援提供者介面(英語:Security Support Provider Interface,縮寫SSPI)是Microsoft Windows作業系統中用於執行各種安全相關操作(如身份驗證)的一個Win32 API。
SSPI的功能是作為眾多安全支援提供程式(SSP)的通用介面[1]:安全支援提供者(Security Support Provider)是可以為應用程式提供一種或多種安全功能包的動態連結媒體櫃(dynamic-link library)。
Windows SSP
下列SSP已經在Windows中預裝:
- NTLM(Windows NT 3.51中引入)(msv1_0.dll) - 為Windows 2000之前的客戶端-伺服器域和非域身份驗證(SMB/CIFS)提供NTLM質詢/響應身份驗證。[2]
- Kerberos(Windows 2000中引入,Windows Vista中更新為支援AES)[3] (kerberos.dll) - Windows 2000及更高版本中首選的客戶端-伺服器域相互身份驗證。[4]
- Negotiate(Windows 2000中引入)(secur32.dll) - 選擇Kerberos,如果不可用則選擇NTLM協定。協商SSP提供單一登入能力,有時稱為整合Windows身份驗證(尤其是用於IIS時)。[5]在Windows 7及更高版本中,NEGOExts引入了協商使用客戶端和伺服器上支援的已安裝客製化SSP進行身份驗證。
- 安全通道(也稱SChannel) - Windows 2000中引入,Windows Vista中更新為支援更強的AES加密和ECC[6]該提供者使用SSL/TLS記錄來加密數據有效載荷。(Schannel.dll)
- PCT(過時)和微軟的TLS/SSL - 公開金鑰加密 SSP為通過互聯網的客戶端和伺服器進行身份驗證,提供加密和安全通訊。[7]Windows 7中更新為支援TLS 1.2。
- 摘要SSP(Windows XP中引入)(wdigest.dll) - 在Windows與Kerberos不可用的非Windows系統間提供基於HTTP和SASL身份驗證的質詢/響應。[8]
- 憑據 (CredSSP)(Windows Vista中引入,Windows XP SP3上也可用)(credssp.dll) - 為遠端桌面連接提供單一登入(SSO)和網絡級身份驗證。[9]
- 分散式密碼驗證(DPA) - (Windows 2000中引入)(msapsspc.dll) - 提供使用數碼證書完成的互聯網身份驗證。[10]
- 使用者對使用者的公開金鑰加密技術(Public Key Cryptography User-to-User,PKU2U)(Windows 7中引入)(pku2u.dll) - 在不隸屬域的系統之間提供使用數碼證書的對等身份驗證。
比較
SSPI是GSSAPI的一個專有變體,進行了擴充並具有許多特定於Windows的資料類型。最早隨Windows NT 3.51和Windows 95中的NT LAN管理器的安全支援提供程式(NTLMSSP)出現。在Windows 2000中,增加了一個Kerberos 5的實現,使用符合官方協定標準RFC 1964 (Kerberos 5 GSSAPI機制)的權杖格式並提供提供與其他供應商的Kerberos 5實現的線級互操作性。
SSPI生成和接受的權杖大多與GSS-API相容,因此Windows上的SSPI客戶端可能能夠根據具體情況與Unix上的GSS-API伺服器進行身份驗證。SSPI的一個重要缺點是缺乏通道繫結,這使得不可能做到一些GSSAPI的互操作性。
互聯網工程任務組(IETF)定義的GSSAPI與微軟SSPI的另一個根本區別是「扮演」概念。在這種模式下,一個伺服器可以切換成經過身份驗證客戶端的「完整」特權並進行操作,以便作業系統執行完整的存取控制檢查。所持權限高於或低於原始權限全取決於哪個客戶端在連接/驗證。在傳統(GSSAPI)模型中,當伺服器執行在服務帳戶下時,其不能提升自己的特權,並必須以特定客戶端或應用程式的方式執行訪問控制。而在Windows Vista中通過將扮演限制在選定的服務帳戶,限制了「扮演」概念帶來的顯著安全隱患。[11]
參考資料
- ^ SSP Packages Provided by Microsoft. [2017-11-05]. (原始內容存檔於2017-02-18).
- ^ User Authentication - Security (Windows 2000 Resource Kit Documentation) : MSDN. [2017-11-05]. (原始內容存檔於2017-11-07).
- ^ Kerberos Enhancements in Windows Vista: MSDN. [2017-11-05]. (原始內容存檔於2017-08-26).
- ^ Windows 2000 Kerberos Authentication. [2017-11-05]. (原始內容存檔於2017-08-26).
- ^ Windows Authentication. [2017-11-05]. (原始內容存檔於2017-11-07).
- ^ TLS/SSL Cryptographic Enhancements in Windows Vista. [2017-11-05]. (原始內容存檔於2017-10-10).
- ^ Secure Channel: SSP Packages Provided by Microsoft. [2017-11-05]. (原始內容存檔於2012-08-29).
- ^ Microsoft Digest SSP: SSP Packages provided by Microsoft. [2017-11-05]. (原始內容存檔於2017-11-07).
- ^ Credential Security Service Provider and SSO for Terminal Services Logon. [2017-11-05]. (原始內容存檔於2017-11-07).
- ^ DCOM Technical Overview: Security on the Internet. [2017-11-05]. (原始內容存檔於2017-11-11).
- ^ Windows Service Hardening: AskPerf blog. [2017-11-05]. (原始內容存檔於2010-04-02).