Avanpost FAM обеспечивает 2FA/MFA/SSO для пользователей, выполняющих аутентификацию в веб-платформу NextCloud, предназначенную для организации облачного хранилища. В инструкции описывается настройка 2FA/MFA/SSO для NextCloud посредством механизма OpenID Connect из состава системы Avanpost FAM. Администратор может обеспечить использование как двухфакторной, так и многофакторной аутентификации в зависимости от сценария аутентификации для группы пользователя.
Настройка через механизм SAML
Настройка на стороне NextCloud
Настройка на стороне NextCloud осуществлять следующим образом:
- Войти в NextCloud (с установленным Nextcloud SAML/SSO Plugin) под учетной записью администратора.
- Перейти в раздел "Настройки" и войти в разделе "Параметры сервера" во вкладку "Подтверждение подлинности SSO и SAML".
- Установить флажок в графе "Разрешить использование нескольких пользовательских backend (например, LDAP)".
- Нажать кнопку "Добавить нового поставщика удостоверений".
- В разделе "Основные" указать следующие параметры:
Параметр Значение UID Атрибут, используемый в качестве внутреннего имени пользователя для NextCloud. Единый вход Наименование провайдера, отображаемое на странице входа в NextCloud (допускается ввести произвольное значение). - Указать параметры раздела "Единый вход" согласно таблице
В URL, представленных в таблице в качестве примеров, вместо значения “ADFS” необходимо указывать DNS сервера, на котором развернут Avanpost FAM ADFS Plugin.
Параметр Значение Идентификатор записи IdP (в формате URL) Уникальный идентификатор IdP URL провайдера идентификации (IdP) Адрес для отправки поставщиком услуг (SP) запросов на аутентификацию URL для запросов SLO (Single Logout)
Адрес IdP, куда SP будет отправлять запросы SLO URL адрес ответа IDP SLO Адрес, куда перенаправляется пользователь после осуществления выхода Открытый сертификат X.509 IdP Сертификат проверки подписей SAML-сообщений в формате Base64 Для заполнения поля "Открытый сертификат X.509 IdP" необходимо осуществить экспорт сертификата для подписи маркеров в AD FS:
- Открыть AD FS Manager и перейти в раздел "Служба", подраздел "Сертификаты".
- Открыть контекстное меню сертификата "Для подписи маркера" и нажать "Просмотр сертификата".
- В открывшемся окне нажать "Состав" и "Копировать в файл".
- Скопировать и сохранить сертификат (представлен в кодировке Base64) для дальнейшего использования.
- После появления сообщения "Метаданные верны" скачать данные в формате XML, нажав на кнопку "Скачать метаданные XML" (для дальнейшей настройке на сервера AD FS).
Настройка на стороне сервера AD FS
Настройка AD FS осуществляется следующим образом:
- Запустить административную консоль настройки AD FS.
- Перейти в раздел "Служба", подраздел "Методы проверки подлинности" и нажать "Изменить".
- Отключить (выключить флаги) все методы, кроме "Forms Authentication" и нажать ОК.
- Перейти в подраздел "Конечные точки" и убедиться, что включена конечная точка типа "SAML 2.0/WS-Federation".
- Запустить PowerShell от имени администратора.
- Добавить и настроить доверие к стороннему приложению NextCloud в службе федерации Active Directory (AD FS), введя следующие команды:
Add-AdfsRelyingPartyTrust -Name nextcloud -Identifier nextcloud -ProtocolProfile SAML Set-AdfsRelyingPartyTrust -Targetname nextcloud -EncryptionCertificateRevocationCheck none -SigningCertificateRevocationCheck none
- Перейти в раздел "Отношения доверия проверяющей стороны" и дважды щелкнуть на созданное подключение "Nextcloud".
- Настроить параметры "Идентификатор" (например,
https://nextcloud.testdomain.local/nextcloud/index.php/apps/user_saml/saml/metadata
) и "Конечная точка" (например,https://nextcloud.testdomain.local/nextcloud/index.php/apps/user_saml/saml/acs
). - В разделе "Отношения доверия проверяющей стороны" вызвать контекстное меню для Nextcloud и открыть окно "Изменить политику подачи запросов для Nextcloud".
- Для правил преобразования выдачи (правила сопоставления типа входящего и типа исходящего утверждения) "UPN" настроить следующие параметры:
- Имя правила утверждения – UPN;
- Тип входящего утверждения – UPN;
- Тип исходящего утверждения – UPN;
- Установить флаг "Пройти по всем значениям утверждений"
- Для правил преобразования выдачи (правила сопоставления типа входящего и типа исходящего утверждения) "sAMAccountName" настроить следующие параметры:
- Имя правила утверждения – sAMAccountName;
- Тип входящего утверждения – Имя;
- Тип исходящего утверждения – UID;
- Установить флаг "Пройти по всем значениям утверждений".
- Для правил преобразования принятия (на проход через входящее утверждение или его фильтрацию) "UPN" настроить следующие параметры:
- Имя правила утверждения – UPN;
- Тип входящего утверждения – UPN;
- Установить флаг "Пройти по всем значениям утверждений".
- Для правил преобразования принятия (на проход через входящее утверждение или его фильтрацию) "sAMAccountName" настроить следующие параметры:
- Имя правила утверждения – sAMAccountName;
- Тип входящего утверждения – Имя;
- Установить флаг "Пройти по всем значениям утверждений.
При выборе из выпадающего списка параметра "Тип входящего утверждения" для настройки правил "sAMAccountName" важно выбрать верный параметр Имя (unique_name). Не перепутать с неверным параметром Имя (given_name).
Настройка на стороне Avanpost FAM Server
Настройку приложения в интерфейсе административной консоли Avanpost FAM Server необходимо выполнить следующим образом:
- Зайти во вкладку создания приложения, нажав кнопку "Добавить приложение" в сервисе "Приложения".
На этапе "Основные настройки" требуется ввести наименование (например,
NextCloud
) и выбрать тип SAML (более подробно процесс создания и управления приложениями описан в разделах Управление приложениями и Управление SAML-приложениями).- На этапе "Настройки интеграции" необходимо установить настройки приложения (В URL, представленных в таблице в качестве примеров, вместо значения “ADFS” необходимо указывать DNS сервера, на котором развернут Avanpost FAM ADFS Plugin) согласно таблице.
Название параметра Описание параметра Issuer http://ADFS/adfs/services/trust
ACS http://ADFS/adfs/ls
Базовый URL http://ADFS/adfs/ks/idpinitiatedsignon
Logout http://ADFS/adfs/logout
NameID Format Указывать необязательно. Значение NameID UPN
Атрибут UPN (User Principal Name) не является основным (преднастроенным) атрибутов и должен быть настроен администратором до создания приложения (подробнее об основных и дополнительных атрибутах описано в статье Управление пользователями.
- На этапе "Настройки аутентификации" выбрать факторы аутентификации для приложения, установив переключатели напротив тех или иных факторов.
- На этапе "Завершение" установить флажок "Сделать приложение активным" и сохранить.
- Перейти в профиль созданного приложения из режима "Приложения" и войти во вкладку "Attributes".
- Добавить следующие атрибуты для схем утверждений (claims):
Наименование атрибута Тип атрибута Описание http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn Значение из атрибута Данному атрибуту присваивается значение дополнительного атрибута UPN. http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name Значение из атрибута Данному атрибуту присваивается значение основных атрибутов имени и фамилии пользователя.
Настройка через механизм OpenID Connect
Настройка на стороне NextCloud
Настройка на стороне NextCloud осуществлять следующим образом:
- Войти в NextCloud под учетной записью администратора.
- Перейти в раздел "Приложения" и нажать кнопку "Загрузить" напротив приложения Social Login (более подробная информация о приложении Social Login: https://apps.nextcloud.com/apps/sociallogin).
- Перейти в раздел "Параметры сервера" и выбрать "Social login".
В графе Custom OpenID Connect нажать кнопку и задать параметры согласно таблице.
Параметр | Значение |
---|---|
Внутреннее имя | Название настраиваемого провайдера идентификации, которое будет отображаться в настройках Nextcloud. Например, Avanpost FAM . |
Название | Название провайдера идентификации, отображаемое пользователям на кнопке страницы аутентификации и в настройках Nextcloud. Например, |
Authorize url | URL для авторизации (соответствует параметру Base URL ). |
Token url | URL для получения маркера доступа (Access token). |
User info URL (optional) | URL сервиса получения данных пользователя. |
Client id | Уникальный идентификатор приложения. |
Client Secret | Cекретный ключ, который будет использоваться для подключения к приложению. |
Scope | Области действия приложения (разрешения для получения данных), разделенные пробелом. Например, openid и profile . |
Настройка на стороне FAM Server
Настройку приложения в интерфейсе административной консоли Avanpost FAM Server необходимо выполнить следующим образом:
- Зайти во вкладку создания приложения, нажав кнопку "Добавить приложение" в сервисе "Приложения".
На этапе "Основные настройки" требуется ввести наименование (например,
NextCloud
) и выбрать тип OAuth/Open ID Connect (более подробно процесс создания и управления приложениями описан в разделах Управление приложениями и Управление OpenID Connect-приложениями).На этапе "Настройки интеграции" необходимо установить настройки приложения (более подробно описано в Шаг 2. Настройки интеграции для OIDC-приложения).
Название параметра Описание параметра Secret Секрет, который будет использоваться для подключения к приложению (должен соответствовать параметру Client Secret). Redirect URIs URL-адрес, на который пользователь будет перенаправлен после успешной аутентификации. Base URL URL-адрес, на который пользователь будет перенаправляться при переходе из личного кабинета. Logout URL-адрес, на который пользователь будет перенаправлен после выхода из приложения. - На этапе "Настройки аутентификации" выбрать факторы аутентификации приложения, установив переключатели напротив тех или иных факторов (более подробно описано в Шаг 3. Настройки аутентификации для OIDC-приложения).
- На этапе "Завершение" установить флажок "Сделать приложение активным" и сохранить (более подробно описано в Шаг 4. Завершение для OIDC-приложения).