Skip to content
Snippets Groups Projects
README.md 3.92 KiB
Newer Older
Alexander Chebotov's avatar
Alexander Chebotov committed
# Интеграция WordPress с JINR SSO
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
Это руководство предназначено для помощи в процессе интеграции вашего сайта на WordPress с системой единого входа ОИЯИ (JINR SSO). Это позволит пользователям авторизоваться на вашем сайте, используя их учетные данные JINR.
Alexander Chebotov's avatar
Alexander Chebotov committed

## Тестирование и совместимость

- **Совместимост с PHP**: Подключение и функционал плагина были протестированы и подтверждены для работы с PHP версии 8.
- **WordPress**: Проверено на совместимость с WordPress версии 6.5.5.
Alexander Chebotov's avatar
Alexander Chebotov committed
## Инструкция по настройке
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
### Шаг 1: Регистрация вашего сайта в системе JINR SSO
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
Первым делом, вам необходимо получить `Client ID` и `Client Secret`, для этого регистрируем ваш сайт на OAuth-сервере JINR.
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
- Инструкции и условия регистрации описаны на [сайте JINR](https://login.jinr.ru/info.html).
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
### Шаг 2: Установка плагина на ваш сайт WordPress
![Пример изображения](https://git.jinr.ru/nica_modules/jinr-sso-wordpress-integration/-/raw/main/OAuth.png)

Alexander Chebotov's avatar
Alexander Chebotov committed
Был взят оригинальный плагин, упрощен и оптимизирован, вырезано все лишнее.
Alexander Chebotov's avatar
Alexander Chebotov committed
Следуйте данным шагам для установки необходимого плагина:
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
1. Перейдите в админ-панель WordPress и выберите раздел "Плагины".
2. Нажмите на кнопку "Добавить новый".
3. Затем нажмите на кнопку "Загрузить плагин".
4. Выберите локальный файл плагина oauth-client-for-user-authentication.zip.
5. Нажмите на кнопку "Установить сейчас".
6. После завершения установки нажмите на кнопку "Активировать плагин".
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
### Шаг 3: Конфигурация плагина
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
После установки и активации плагина необходимо перейти к его настройке:
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
1. Перейдите в раздел **OAuth Client** в административной панели.
2. Выполните следующие настройки:
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
   **Настройки OAuth клиента:**
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
   - **OAuth Server**: Выберите Custom OAuth
   - **App Name**: Укажите название вашего сайта
   - **Callback URL / Redirect URL**: Данный URL будет автоматически сгенерированным
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
   **Ключи и endpoints:**
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
   - **Client ID / Application ID**: Укажите полученный от JINR `Client ID`
   - **Client Secret**: Введите полученный `Client Secret`
   - **Scope**: `email,userinfo`
Alexander Chebotov's avatar
Alexander Chebotov committed
   - **Authorization Endpoint**: `https://login.jinr.ru/cgi-bin/authorize`
   - **Token Endpoint**: `https://login.jinr.ru/cgi-bin/token`
   - **Userinfo Endpoint**: `https://login.jinr.ru/cgi-bin/infojson`
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
   **Сопоставление атрибутов:**
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
   - **username**: Укажите `login`
   - **Email**: Укажите `mail`
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
### Шаг 4: Тестирование интеграции
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
После завершения настройки, проверьте корректность работы интеграции, попытайтесь войти через JINR SSO.
Alexander Chebotov's avatar
Alexander Chebotov committed

Alexander Chebotov's avatar
Alexander Chebotov committed
Более детальную информацию по настройке и возможным проблемам вы всегда можете найти в документации выбранного вами плагина.