安全支援提供者介面(英語:Security Support Provider Interface,縮寫SSPI)是Microsoft Windows作業系統中用於執行各種安全相關操作(如身份驗證)的一個Win32 API

SSPI的功能是作為眾多安全支援提供程式(SSP)的通用介面[1]:安全支援提供者(Security Support Provider)是可以為應用程式提供一種或多種安全功能包的動態連結媒體櫃dynamic-link library)。

Windows SSP

下列SSP已經在Windows中預裝:

比較

SSPI是GSSAPI英語Generic Security Services Application Program Interface的一個專有變體,進行了擴充並具有許多特定於Windows的資料類型。最早隨Windows NT 3.51Windows 95中的NT LAN管理器英語NTLM安全支援提供程式英語NTLMSSP(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的另一個根本區別是「扮演英語Access token#Types of tokens」概念。在這種模式下,一個伺服器可以切換成經過身份驗證客戶端的「完整」特權並進行操作,以便作業系統執行完整的存取控制檢查。所持權限高於或低於原始權限全取決於哪個客戶端在連接/驗證。在傳統(GSSAPI)模型中,當伺服器執行在服務帳戶下時,其不能提升自己的特權,並必須以特定客戶端或應用程式的方式執行訪問控制。而在Windows Vista中通過將扮演限制在選定的服務帳戶,限制了「扮演」概念帶來的顯著安全隱患。[11]

參考資料

  1. ^ SSP Packages Provided by Microsoft. [2017-11-05]. (原始內容存檔於2017-02-18). 
  2. ^ User Authentication - Security (Windows 2000 Resource Kit Documentation) : MSDN. [2017-11-05]. (原始內容存檔於2017-11-07). 
  3. ^ Kerberos Enhancements in Windows Vista: MSDN. [2017-11-05]. (原始內容存檔於2017-08-26). 
  4. ^ Windows 2000 Kerberos Authentication. [2017-11-05]. (原始內容存檔於2017-08-26). 
  5. ^ Windows Authentication. [2017-11-05]. (原始內容存檔於2017-11-07). 
  6. ^ TLS/SSL Cryptographic Enhancements in Windows Vista. [2017-11-05]. (原始內容存檔於2017-10-10). 
  7. ^ Secure Channel: SSP Packages Provided by Microsoft. [2017-11-05]. (原始內容存檔於2012-08-29). 
  8. ^ Microsoft Digest SSP: SSP Packages provided by Microsoft. [2017-11-05]. (原始內容存檔於2017-11-07). 
  9. ^ Credential Security Service Provider and SSO for Terminal Services Logon. [2017-11-05]. (原始內容存檔於2017-11-07). 
  10. ^ DCOM Technical Overview: Security on the Internet. [2017-11-05]. (原始內容存檔於2017-11-11). 
  11. ^ Windows Service Hardening: AskPerf blog. [2017-11-05]. (原始內容存檔於2010-04-02). 

外部連結