Показаны различия между двумя версиями страницы.
| — |
истинность_pam [2025/05/15 13:22] (текущий) kirill создано |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | # Таблица истинности PAM с пояснениями | ||
| + | |||
| + | PAM (Pluggable Authentication Modules) — это система аутентификации в Linux/UNIX, которая позволяет администраторам настраивать способы проверки пользователей через конфигурационные модули. Хотя PAM — это не логическая система с булевой таблицей истинности в прямом смысле, | ||
| + | |||
| + | --- | ||
| + | |||
| + | ## 📋 Таблица " | ||
| + | |||
| + | Ниже представлена **обобщённая логическая таблица** для модуля PAM с разными флагами и их поведением в зависимости от результата работы модуля (`success` или `failure`): | ||
| + | |||
| + | | Флаг | ||
| + | |--------------|----------------|--------------|-------------------------------|-----------| | ||
| + | | `required` | ||
| + | | `required` | ||
| + | | `requisite` | ||
| + | | `requisite` | ||
| + | | `sufficient` | success | ||
| + | | `sufficient` | failure | ||
| + | | `optional` | ||
| + | | `optional` | ||
| + | |||
| + | --- | ||
| + | |||
| + | ## 🧠 Примеры логики на практике | ||
| + | |||
| + | ### Пример 1: `required` + `required` | ||
| + | ```pam | ||
| + | auth required pam_unix.so | ||
| + | auth required pam_tally2.so | ||
| + | ``` | ||
| + | - Обе должны пройти успешно. | ||
| + | - Если первая завершится неудачно — PAM запомнит это, но не прервёт выполнение. | ||
| + | - Ошибка в любой приведёт к отказу в конце. | ||
| + | |||
| + | --- | ||
| + | |||
| + | ### Пример 2: `requisite` перед `required` | ||
| + | ```pam | ||
| + | auth requisite pam_tally2.so | ||
| + | auth required pam_unix.so | ||
| + | ``` | ||
| + | - Если `pam_tally2.so` завершится ошибкой, | ||
| + | - `pam_unix.so` даже не выполнится. | ||
| + | |||
| + | --- | ||
| + | |||
| + | ### Пример 3: `sufficient` | ||
| + | ```pam | ||
| + | auth sufficient pam_krb5.so | ||
| + | auth required pam_unix.so | ||
| + | ``` | ||
| + | - Если `pam_krb5.so` прошёл успешно, | ||
| + | - Если `pam_krb5.so` провалился — продолжаем, | ||
| + | |||
| + | --- | ||
| + | |||
| + | ## 🧾 Заключение | ||
| + | |||
| + | PAM действует по принципу **цепочки проверок**, | ||
| + | |||
| + | Если хочешь, | ||