Wtykowy moduł uwierzytelniania - Pluggable authentication module

Struktura

Wtykowy moduł uwierzytelniania ( PAM ) jest mechanizmem zintegrować wiele niskiego poziomu uwierzytelniania systemy do wysokiego poziomu interfejsu programowania aplikacji (API). PAM umożliwia pisanie programów, które opierają się na uwierzytelnianiu, niezależnie od bazowego schematu uwierzytelniania. Została po raz pierwszy zaproponowana przez firmę Sun Microsystems w dokumencie RFC (ang. Open Software Foundation Request for Comments ) 86.0 z października 1995 r. Została przyjęta jako struktura uwierzytelniania Common Desktop Environment . Jako samodzielna infrastruktura o otwartym kodzie źródłowym , PAM po raz pierwszy pojawił się w Red Hat Linux 3.0.4 w sierpniu 1996 r. w ramach projektu Linux PAM . PAM jest obecnie obsługiwany w systemie operacyjnym AIX , DragonFly BSD , FreeBSD , HP-UX , Linux , macOS , NetBSD i Solaris .

Ponieważ nie istnieje żaden centralny standard zachowania PAM, podjęto później próbę standaryzacji PAM w ramach procesu standaryzacji X/Open UNIX, co zaowocowało standardem X/Open Single Sign-on ( XSSO ). Ten standard nie został ratyfikowany, ale projekt standardu służył jako punkt odniesienia dla późniejszych implementacji PAM (na przykład OpenPAM ).

Krytyka

Ponieważ większość implementacji PAM nie łączy się z samymi klientami zdalnymi, sam PAM nie może zaimplementować protokołu Kerberos , najpopularniejszego typu SSO używanego w środowiskach uniksowych. Doprowadziło to do włączenia SSO jako części „podstawowego uwierzytelniania” przyszłego standardu XSSO oraz do pojawienia się technologii takich jak SPNEGO i SASL . Ten brak funkcjonalności jest również powodem, dla którego SSH przeprowadza własne negocjacje mechanizmu uwierzytelniania.

W większości implementacji PAM pam_krb5 pobiera tylko Ticket Granting Tickets , co obejmuje monitowanie użytkownika o poświadczenia i jest używane tylko do początkowego logowania w środowisku logowania jednokrotnego. Aby pobrać bilet usługi dla określonej aplikacji i nie monitować użytkownika o ponowne wprowadzenie poświadczeń, ta aplikacja musi być specjalnie zakodowana w celu obsługi protokołu Kerberos. Dzieje się tak, ponieważ pam_krb5 sam nie może uzyskać biletów serwisowych, chociaż istnieją wersje PAM-KRB5, które próbują obejść ten problem.

Zobacz też

Bibliografia

Zewnętrzne linki

Dane techniczne:

Przewodniki: