可插拔認證模組
![本頁使用了標題或全文手工轉換](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
可插拔認證模組 (PAM)是一種將多個低階認證方案整合到進階應用程式編程介面(API)中的機制, 可以讓依賴於身份驗證的程式獨立於底層的身份驗證方案編寫。PAM 最初由太陽電腦在1995年10月的開放軟件基金會的請求意見稿 (RFC)86.0中提出。它被用作通用桌面環境的身份驗證框架。作為獨立的開源基礎結構,PAM 於1996年8月在 Linux PAM 專案中首次出現在 Red Hat Linux 3.0.4中。 當前, AIX作業系統、DragonFly BSD[1]、FreeBSD、HP-UX、Linux、macOS、NetBSD 和 Solaris 均支援PAM。
由於不存在規範 PAM 行為的中心標準,後來有人嘗試將 PAM 標準化為 X/Open UNIX 標準化過程的一部分,從而產生了X/Open Single Sign-on(XSSO)標準。 該標準尚未獲得批准,但是其草案可供後來的PAM實現(例如OpenPAM)參考。
批評
[編輯]由於大多數 PAM 實現本身都不與遠端客戶端互動,PAM 本身無法實現 Kerberos(Unix環境中最常見的SSO類型)。這導致SSO被合併為可能的XSSO標準的「主要認證」部分,並且出現了諸如SPNEGO和 SASL 之類的技術。 這種功能上的缺乏也是 SSH 自己實現身份驗證機制協商的原因。
在大多數PAM實現中,pam_krb5 只能取得票據授權票據(TGT),這涉及到提示用戶輸入憑據,並且僅用於SSO環境中的初始登入。如要在不提示用戶再次輸入憑據的前提下,取得特定應用程式的服務票證,則必須對該應用程式進行特定的編碼以支援 Kerberos,這是因為 pam_krb5 本身無法取得服務票證(儘管有些 PAM-KRB5 版本正試圖解決該問題)。[2]
參見
[編輯]- 身份管理
- Java身份驗證和授權服務
- Linux PAM
- 名稱服務開關(NSS)
- OpenPAM
參考文獻
[編輯]- ^ PAM manual page of DragonFly BSD. [2021-07-16]. (原始內容存檔於2021-07-19).
- ^ PAM-KRB5. [2021-07-16]. (原始內容存檔於2021-04-15).
外部連結
[編輯]- 原始PAM RFC (頁面存檔備份,存於互聯網檔案館)
- PAM and password control,存檔於互聯網檔案館(存檔日期 August 19, 2013)
- Linux的可插入身份驗證模組 (頁面存檔備份,存於互聯網檔案館)
- 充分利用可插拔身份驗證模組(PAM) (頁面存檔備份,存於互聯網檔案館)
- Oracle Solaris管理:安全服務:使用PAM (頁面存檔備份,存於互聯網檔案館)
- X / Open Single Sign-on(XSSO)1997工作檔案草案 (頁面存檔備份,存於互聯網檔案館)