Настройка двухфакторной аутентификации Ansible AWX
В статье описывается настройка Ansible AWX для защиты пользовательского входа в систему двухфакторной аутентификацией.
Возможные способы аутентификации:
Мобильное приложение MultiFactor
Telegram
Звонок (нужно принять вызов и нажать #)
Для настройки второго фактора аутентификации вам потребуется установить и настроить MultiFactor LDAP Adapter.
Схема работы
- Пользователь подключается к Ansible AWX, вводит логин и пароль на странице входа;
- LDAP клиент Ansible AWX по протоколу LDAP подключается к компоненту MultiFactor LDAP Adapter;
- Компонент проверяет логин и пароль пользователя в Active Directory или OpenLDAP и запрашивает второй фактор аутентификации;
- Пользователь подтверждает запрос доступа выбранным способом аутентификации.
Перед началом работы
Убедитесь, что на сервере с Ansible AWX открыты порт 389 TCP (LDAP) и 636 TCP (LDAPS) для отправки запросов компоненту MultiFactor LDAP Adapter.
Настройка Мультифактора
- Зайдите в систему управления Мультифактором, далее в раздел "Ресурсы" и создайте новое LDAP приложение;
- После создания вам будут доступны два параметра: NAS Identifier и Shared Secret, они потребуются для последующих шагов;
- Загрузите и установите MultiFactor LDAP Adapter.
Настройка Ansible AWX
Зайдите в панель управления Ansible AWX с правами администратора.
В разделе Settings > Authentication > LDAP settings нажмите Edit.
LDAP Server URI: адрес и порт компонента MultiFactor LDAP Adapter в формате ldap-url
LDAP Bind Password: пароль сервисного пользователя
LDAP Group Type: Выберите "ActiveDirectoryGroupType" для Active Directory
LDAP Bind DN: учётная запись сервисного пользователя (например, CN=binduser,DC=domain,DC=com)
LDAP User Search
LDAP-запрос для поиска пользователей
[ "CN=Users,DC=domain,DC=local", "SCOPE_SUBTREE", "(sAMAccountName=%(user)s)" ]
LDAP Group Search
LDAP-запрос для поиска групп
[ "DC=domain,DC=local", "SCOPE_SUBTREE", "(objectClass=group)" ]
LDAP User Attribute Map
Сопоставление схемы пользователей LDAP с атрибутами пользователей Ansible AWX
{ "first_name": "givenName", "last_name": "sn", "email": "email" }
LDAP Organization Map
Настройка автоматического создания организации "LDAP Organization" с регистрацией пользователей в качестве "team member" при первом подключении
{ "LDAP Organization": { "remove_users": false, "users": true, "remove_admins": false }
}
Нажмите Save.
Смотрите также: