# Конфигурирование интеграции с OpenID

Выполните следующие шаги под учетной записью администратора PassOffice.

**Настройка PassOffice:**

**1. Запуск сервера PassOffice:** Запустите сервер PassOffice, используя файл `PassOfficeSrv.bat`.

**2. Авторизация в PassOffice:** Откройте браузер, введите адрес сервера PassOffice (например, `localhost:80`) и авторизуйтесь под учетной записью администратора.

**3**. **Переход к настройкам интеграции:** Откройте пункт меню «Администрирование / Настройки интеграции».

**4. Редактирование настроек OpenID:**

* **Основные параметры:**
* `ADFS discovery document URL` **:** URL, по которому можно получить метаданные OpenID Connect (например, `https://example.com/.well-known/openid-configuration`). Это позволяет PassOffice автоматически обнаружить endpoints авторизации, токена и userInfo.
* `Идентификатор клиента (Client ID):` идентификатор клиента, выданный PassOffice Identity Provider'ом (ADFS или другим).
* `Алгоритм генерации токена:` алгоритм, используемый для подписи токенов (например, RS256, ES256).
* `Connection timeout и Read timeout`: задайте значения тайм-аутов для соединения и чтения данных.

• **Вкладка «SSL»:**

* Добавьте сертификат для защищенного соединения.
* Поддерживаются сертификаты x509, хранилища JKS и PKCS12.
* Включите настройку "Упрощенная проверка" для отключения проверки хоста и домена.

• **Вкладка «Настройки операторов»:**

* *Соответствие настроек оператора в PassOffice и группы Active Directory:* установите соответствие между группами AD и предустановленными "Настройками оператора" в PassOffice.

• **Вкладка «Настройки внешнего вида»:**

* *Соответствие настроек оператора в PassOffice и группы Active Directory:* установите соответствие между группами AD и предустановленными "Настройками внешнего вида" в PassOffice.

В случае, если у пользователя несколько групп, подходящих под отображение, ему будут присвоены те настройки оператора, которые в таблице указаны выше.

• **Вкладка «Саморегистрация»:**

* *Разрешать саморегистрацию:* если флажок установлен, пользователи смогут создавать учетные записи PassOffice при первом входе через OpenID. Укажите настройки по умолчанию для вновь созданных учетных записей.
  * *Период синхронизации оператора* - укажите значение в минутах
  * *Категория при саморегистрации* - укажите категорию по умолчанию.

**Вкладка «Данные»:**

* **Active Directory:** используйте Active Directory в качестве источника данных для атрибутов пользователя. Это предполагает, что Identity Provider (например, ADFS) настроен для получения информации из AD.
* **JWT Token:** используйте JWT (JSON Web Token), полученный от Identity Provider'а, для получения атрибутов пользователя. В этом случае, необходимо настроить сопоставление клеймов JWT с полями PassOffice.
* Определите, каким полям в PassOffice соответствуют *атрибуты в* OpenID. Например: `ФИО=displayName` , `Имя=givenName,GivenName` (поиск ведется сначала в поле givenName, а затем, если оно не заполнено, в поле GivenName.

```properties
Фамилия=sn
Почта=mail
Логин=userPrincipalName
Телефон=telephoneNumber
Рабочий телефон=telephoneNumber
Комната=physicalDeliveryOfficeName
Отдел=department
Должность=title
Организация=Company
Страна=co
```

• В каждом поле задайте стратегия разрешения конфликтов при обнаружении совпадений:

* *Сторонняя система, очищать -* если поле есть и в PassOffice и в СКУД, то оно будет заменено на соответствующее из СКУД. Если поле есть в PassOffice, но нет в СКУД, то поле в PassOffice будет очищено. Если каких-то полей нет в PassOffice, но есть в СКУД, то оно заменится на соответствующее из СКУД.
* *Сторонняя система, дополнять -* если поле есть и в PassOffice и в СКУД, то оно будет заменено на соответствующее из СКУД. Если поле есть в PassOffice, но нет в СКУД, то поле отгрузится из PassOffice. Если каких-то полей нет в PassOffice, но есть в СКУД, то оно заменится на соответствующее из СКУД.
* *Бюро пропусков -* данные в PassOffice сохраняются, даже если они отличаются от данных в AD. Если каких-то полей нет в PassOffice, но есть в Active Directory, то они заменяются на соотвествующие из Active Directory.

**Тест соединения:** обязательно проведите тест соединения после ввода параметров.

* **Успешный тест:** активируйте настройки соединения с OpenID.
* **Ошибка:** проверьте логи сервера PassOffice для выявления и устранения проблемы.

• **Реактивация/Деактивация соединения:** используйте соответствующие кнопки для управления состоянием соединения с OpenID.

• **Вкладка «Соответствие категорий»:**

* *Соответствие категорий оператора в PassOffice и группы Active Directory:* установите соответствие между группами AD и категориями в PassOffice или укажите категорию по умолчанию.

• **Вкладка «Профили операторов»:**

* Задайте соответствие группы AD и профиля оператора в PassOffice.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.aamsystems.ru/passoffice/passoffice-guide/admin-guide-doc/acs-configuration/acs-openid.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
