Studiuję PAM i jestem trochę nieświadomy znaczenia jakiejś kombinacji flag kontrolnych. Z dokumentacji Red Hat mamy:
wymagana
awaria takiego PAM ostatecznie doprowadzi do niepowodzenia zwracania PAM-API, ale dopiero po wywołaniu pozostałych stosowych modułów (dla tej usługi i typu)wymagane,
jak wymagane, jednak w przypadku, gdy taki moduł zwraca awarię, kontrola jest zwracana bezpośrednio do aplikacji.wystarczający
sukces takiego modułu jest wystarczający, aby spełnić wymagania uwierzytelnienia stosu modułów (jeśli poprzedni wymagany moduł nie przejdzie pomyślnie, sukces tego modułu jest ignorowany). Awaria tego modułu nie jest uważana za krytyczną dla spełnienia wniosku, że ten typ się powiódł. Jeśli moduł się powiedzie, środowisko PAM natychmiast zwraca sukces aplikacji bez próbowania innych modułów.
Tak więc, moim zdaniem, jeśli moduł requisite
ulegnie awarii, cały stos modułów nie zostanie przeanalizowany, a kontrola natychmiast powróci do aplikacji. Jeśli moduł się sufficient
powiedzie, reszta stosu modułów nie zostanie przeanalizowana, a kontrola natychmiast powróci do aplikacji. Jeśli moduł required
ulegnie awarii, cały stos zostanie przeanalizowany.
Teraz nie rozumiem, jakie będzie zachowanie, gdy jeden moduł required
ulegnie awarii, a inny moduł odniesie sufficient
sukces.
required
przedmiot zawiódł, dlaczegoPAM
trzeba ciągle przechodzić przez stos? czy to w końcu i tak się nie powiedzie?