# WordPress

**WordPress** (<https://wordpress.com>) - это система управления содержимым сайта.

Подключение WordPress к Blitz Identity Provider выполняется по протоколу OpenID Connect и состоит из двух этапов:

 * Этап 1. Настройки на стороне WordPress

 * Этап 2. Настройки на стороне Blitz Identity Provider

<div style="background-color: #fff3cd; border: 1px solid #ffc107; border-radius: 5px; padding: 10px;">
     <strong>Важно:</strong> <p>В инструкции для примера указано, что WordPress расположен на домене <code class="docutils literal notranslate"><span class="pre">https://wp.company.com</span></code>, а Blitz IDP установлен на домене <code class="docutils literal notranslate"><span class="pre">https://login.company.com</span></code>. Уточните ваши адреса перед применением инструкции.</p>
 </div>

### Этап 1. Настройки на стороне WordPress

Выполните следующие действия:

1. Для интеграции WordPress с Blitz Identity Provider войдите в WordPress под учетной записью администратора. Установите плагин OpenID Connect Generic и перейдите в его настройки.
2. Далее заполните следующие поля:

 * **Login Type** - выберите Auto ``Login - SSO``.
 * **Client ID** - укажите уникальное название для идентификации приложения. Например, ``Blitz``.
 * **Client Secret Key** - задайте секретный ключ для безопасной аутентификации приложения.
 * **OpenID Scope** - укажите необходимые разрешения для получения данных. Например, обязательный scope ``openid`` и стандартный scope ``profile``. При указании нескольких разрешений разделите их пробелом.
 * **Login Endpoint URL** - укажите URL для авторизации. Например, ``https://login.company.com/blitz/oauth/ae``.
 * **Userinfo Endpoint URL** - укажите URL сервиса получения данных пользователя. Например, ``https://login.company.com/blitz/oauth/me``.
 * **Token Validation Endpoint URL** - укажите URL для получения маркера доступа. Например, ``https://login.company.com/blitz/oauth/te``.
 * **End Session Endpoint URL** - укажите URL для выхода из приложения. Например, ``https://login.company.com/blitz/login/logout``
 * **Identity Key** - укажите в фигурных скобках ключ идентификации.  Например, ``{sub}``.
 * **Nickname Key** - укажите в фигурных скобках ключ имени пользователя. Например, ``{sub}``.
 * **Email Formatting** - укажите в фигурных скобках формат электронной почты. Например,  ``{email}``.
 * **Display Name Formatting** - укажите в фигурных скобках формат отображения имени. Например,  ``{family_name} {given_name}``.

[![](https://docs.identityblitz.ru/kb/uploads/images/gallery/2024-08/image-1720691937526.png)](https://docs.identityblitz.ru/kb/uploads/images/gallery/2024-08/image-1720691937526.png)

3. Нажмите __Сохранить изменения__.
---

### Этап 2. Настройки на стороне Blitz Identity Provider

В консоли управления _Blitz Identity Provider_ перейдите в раздел **Приложения** и выполните следующие действия:

1. **Создайте** новое приложение, задав его базовые настройки:

* **Идентификатор (entityID или client_id)**: аналогичный client_id, который был прописан в OpenID Connect Generic
* **Название**: имя приложения WordPress, которое будет отображаться на стороне Blitz IDP
* **Домен**: ``https://wp.company.com``

<p align="center">
  <img src="https://docs.identityblitz.ru/kb/uploads/images/gallery/2024-08/image-1720695051973.png">
</p>

2. Нажмите **Сохранить**.

3. Далее нажмите кнопку **Параметры** <img width="25" height="25" src="https://docs.identityblitz.ru/kb/uploads/images/gallery/2024-08/button-1.png"> у предложения WordPress и отредактируйте параметры приложения:

* **Протоколы**: выберите ``OAuth 2.0`` и нажмите **Сконфигурировать**

*Далее в параметрах укажите данные, как в OpenID Connect Generic и другие обязательные параметры:*

* **Секрет (client_secret)**: аналогичный client_secret, который был указан в настройках OpenID Connect Generic

* **Префиксы ссылок возврата**: ``https://wp.company.com``

* **Допустимые разрешения**: ``openid`` ``profile``

* **Метод аутентификации при обращении к сервису выдачи маркеров**: ``client secret post``

* **Допустимые response type**: ``code`` ``token``

<p align="center">
  <img src="https://docs.identityblitz.ru/kb/uploads/images/gallery/2024-08/image-1720695418090.png">
</p>

4. Нажмите **Сохранить**.

<div style="background-color: #d0f0c0; border: 1px solid #28a745; border-radius: 5px; padding: 10px;">
<strong>Совет:</strong>
<p>После прохождения всех шагов рекомендуем проверить корректность входа в WordPress: <code class="docutils literal notranslate"><span class="pre">https://wp.company.com</span></code></p>
</div>