Для использования этого плагина вам потребуется доступ к платному аккаунту разработчика Apple.
| Краткое описание | Discourse Apple Authentication позволяет пользователям входить в систему с помощью аутентификации Apple. | |
| Руководство по установке | Этот плагин включен в ядро Discourse. Отдельная установка плагина не требуется. |
Чтобы попробовать, перейдите на try.discourse.org и войдите в систему. Вот демонстрация работы на iOS:
Для настройки вам потребуется выполнить несколько действий в консоли разработчика Apple:
-
Перейдите на Sign In - Apple и войдите в систему
-
Настройте идентификатор приложения (App ID)
- Перейдите в раздел “Сертификаты, идентификаторы и профили”
- В левом меню выберите “Идентификаторы”
- Нажмите кнопку +, чтобы создать новый идентификатор
- Выберите “App IDs”, затем нажмите “Продолжить”
- Выберите “App”, затем нажмите “Продолжить”
- Введите описание (будет видно пользователям в их списке разрешенных приложений). Например, “Awesome Community Login”
- Введите идентификатор пакета (bundle ID). Apple рекомендует использовать обратный домен, например
com.example.forum - Прокрутите вниз и включите опцию “Sign in with Apple”
- Нажмите “Продолжить”
- Запишите Team ID для последующего использования
- Нажмите “Зарегистрировать”
-
Настройте идентификатор сервиса (Services ID)
- Перейдите в раздел “Сертификаты, идентификаторы и профили”
- Нажмите кнопку +, чтобы создать новый идентификатор
- Выберите “Services ID”, затем нажмите “Продолжить”
- Введите описание. Оно будет отображаться пользователям при входе в систему. Например, “Awesome Discourse Community”
- Введите идентификатор пакета. Можно использовать тот же, что и для App ID, добавив в конце
.login - Запишите этот идентификатор пакета для последующего использования. Он будет выступать в роли Client ID
- Нажмите “Продолжить”, затем “Зарегистрировать”
- Найдите созданный идентификатор сервиса в списке и откройте его
- Включите “Sign in with Apple” и нажмите “Настроить”
- Введите домен вашего сайта, например
forum.example.com, и обратный URL, напримерhttps://forum.example.com/auth/apple/callback - Нажмите “Далее”, “Готово”, “Продолжить”, “Сохранить”
-
Настройте ключ (Key)
- В левом меню выберите “Keys”
- Нажмите +, чтобы создать новый ключ
- Введите имя, например “Awesome Community Login”
- Включите опцию ‘Sign In With Apple’, затем нажмите “Настроить”
- Выберите основной идентификатор приложения (App ID), созданный ранее
- Нажмите “Сохранить”, затем “Продолжить”
- Нажмите “Зарегистрировать”
- Запишите Key ID для последующего использования
- Скачайте ключ и сохраните его в надежном месте. Он будет использоваться как значение apple_pem
- Нажмите “Готово”
-
Перейдите к настройкам вашего сайта Discourse
- Найдите
apple_ - Введите client id, team id и key id, полученные ранее
- Откройте файл ключа в текстовом редакторе, выделите всё содержимое и скопируйте/вставьте его в настройку сайта
apple pem - Включите опцию
sign in with apple enabled
- Найдите
Теперь попробуйте: если всё прошло по плану, на экране входа должна появиться кнопка “with Apple”.
Приватные адреса электронной почты
Если пользователи выберут опцию «Скрыть мой адрес электронной почты» при входе в систему, форуму будет предоставлен адрес Apple «Private Relay» для этого пользователя. Чтобы ваш форум мог взаимодействовать с этим адресом, его необходимо подтвердить в Apple.
-
Перейдите на Sign In - Apple и войдите в систему
-
Перейдите в раздел «Сертификаты, идентификаторы и профили»
-
В левом меню выберите «Ещё», затем под разделом «Sign in with Apple для электронной коммуникации» нажмите «Настроить»
-
Нажмите + рядом с «Источники электронной почты»
-
В разделе «Домены» введите доменное имя, с которого ваш сайт отправляет письма. (для клиентов, размещенных на CDCK, это
discoursemail.com) -
Сохраните изменения и убедитесь, что SPF подтвержден для этого адреса
Обратите внимание: указание здесь отдельного адреса электронной почты нарушит функцию «ответ по электронной почте» в Discourse. Необходимо добавить весь домен целиком.

