Настройка двухфакторной аутентификации 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.
Смотрите также: