Для использования этого плагина вам потребуется доступ к платному аккаунту разработчика 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 - Прокрутите вниз и включите опцию «Вход через Apple»
- Нажмите «Продолжить»
- Запишите Team ID для дальнейшего использования
- Нажмите «Register»
-
Настройте Services ID
- Перейдите в раздел «Сертификаты, идентификаторы и профили»
- Нажмите кнопку +, чтобы создать новый идентификатор
- Выберите «Services ID», затем нажмите «Продолжить»
- Введите описание. Оно будет отображаться пользователям при входе в систему. Например, «Awesome Discourse Community»
- Введите Bundle ID. Можно использовать тот же, что и для App ID, добавив в конец
.login - Запишите этот Bundle ID для дальнейшего использования. Он станет Client ID
- Нажмите «Продолжить», затем «Register»
- Найдите сервисный идентификатор в списке и откройте его
- Включите «Вход через Apple» и нажмите «Configure»
- Введите домен вашего сайта, например
forum.example.com, и URL обратного вызова, напримерhttps://forum.example.com/auth/apple/callback - Далее нажмите «Done», «Continue», «Save»
-
Настройте ключ
- В левом меню нажмите «Keys»
- Нажмите +, чтобы создать новый ключ
- Введите имя, например «Awesome Community Login»
- Включите опцию «Sign In With Apple», затем нажмите «Configure»
- Выберите основной App ID, который вы создали ранее
- Нажмите «Save», затем «Continue»
- Нажмите «Register»
- Запишите Key ID для дальнейшего использования
- Скачайте ключ и сохраните его в безопасном месте. Он понадобится для значения apple_pem
- Нажмите «Done»
-
Перейдите к настройкам сайта Discourse
- Найдите параметры, содержащие
apple_ - Введите client id, team id и key id, полученные ранее
- Откройте файл ключа в текстовом редакторе, выделите весь текст и скопируйте/вставьте его в параметр
apple pem - Включите параметр
sign in with apple enabled
- Найдите параметры, содержащие
Теперь попробуйте — если все прошло по плану, на экране входа должна появиться кнопка «Вход через Apple».
Приватные электронные почты
Если пользователи выбирают опцию «скрыть мой адрес электронной почты» при входе в систему, форум получит от Apple адрес «приватного ретранслятора» для этого пользователя. Чтобы ваш форум мог общаться с этим адресом, его необходимо верифицировать в Apple
-
Перейдите по адресу Sign In - Apple и войдите в систему
-
Перейдите в раздел «Сертификаты, идентификаторы и профили»
-
В левом меню нажмите «More», затем «Configure» в разделе «Sign in with Apple for Email Communication»
-
Нажмите + рядом с «Email Sources»
-
В разделе «Domains» введите доменное имя, с которого ваш сайт отправляет электронные письма. (Для клиентов, размещенных на CDCK, это
discoursemail.com) -
Нажмите «Save» и убедитесь, что SPF-запись для адреса верифицирована
Обратите внимание: если ввести здесь индивидуальный адрес электронной почты, это нарушит функцию «ответ по электронной почте» в Discourse. Необходимо добавлять весь домен целиком.

