Настройки авторизации

1. Социальные сети

Настройка авторизации через социальные сети в первую очередь выполняется со стороны социальной сети. После создания приложения прописываются соответствующие доступы в разделе «Настройки сайта / Системные настройки / Пользователи / Социальные сети».

До версии 2.4.2 данные настройки следует указывать в файле /config/social.php следующим образом:

  • вставьте данные, которые получите в результате настройки приложения социальной сети;
  • чтобы включить авторизацию, замените 'enabled' => false, на 'enabled' => true, в блоке настройки соответствующей социальной сети.

Для каждой из социальных сетей способ настройки индивидуальный.

1.1 Вконтакте

1. Авторизуйтесь и перейдите по ссылке: http://vk.com/editapp?act=create

2. Заполните форму:

  • Название: введите название, например Example.com;
  • Платформа: выберите Веб-сайт;
  • Адрес сайта: введите адрес вашего сайта, например http://example.com;
  • Базовый домен: введите домен вашего сайта, например example.com.

Заполнение формы ВКонтакте

Вместо example.com подставьте адрес своего сайта. Если ваш сайт работает в режиме https, то откорректируйте ссылки соответствующим образом.

3. Нажмите кнопку Подключить сайт.

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

5. Перейдите во вкладку Настройки и скопируйте ID приложения и Защищенный ключ для последующей вставки в файл /config/social.php.

Копирование ID приложения и Защищенного ключа

6. Включите авторизацию и пропишите полученные данные приложения в файл /config/social.php для пункта Vkontakte:

  • замените array('id'=>'', 'secret'=>'') на array('id'=>'CLIENT_ID', 'secret'=>'CLIENT_SECRET'),
    где CLIENT_ID — это ID приложения, а CLIENT_SECRETЗащищенный ключ;
  • чтобы включить авторизацию, замените 'enabled'=>false, на 'enabled'=>true,

Редактирование блока Vkontakte

1.2 Facebook

1. Авторизуйтесь в Facebook.

2. Перейдите в консоль разработчика: https://developers.facebook.com

3. Выберите пункт Добавить новое приложение из выпадающего меню.

Добавление приложения

4. Введите название приложения, например Example, затем почту и нажмите кнопку Создайте ID приложения.

Создание ID приложения

5. Выберите пункт Вход через Facebook, нажав на кнопку Настроить.

Выбор продукта

6. Щёлкните на пункт Веб.

Добавление Вход через Facebook

7. Укажите адрес своего сайта и нажмите кнопку Save.

Добавление URL сайта

Вместо example.com подставьте адрес своего сайта.

8. Перейдите во вкладку Настройки/Основные. В поле URL-адрес политики конфиденциальности добавьте ссылку на политику конфиденциальности вашего сайта и нажмите кнопку Сохранить изменения.

Добавление ссылки на политику конфиденциальности

9. Во вкладке Вход через Facebook/Настройки установите следующие параметры:

  • Клиентская авторизация OAuth: Да
  • Веб-авторизация OAuth: Да
  • Остальное: Нет
  • Действительные URL-адреса для перенаправления OAuth: https://example.com/user/loginsocial/facebook, где вместо example.com подставьте адрес своего сайта.

Если на вашем сайте задействовано 2 языка и больше, то также следует добавить ссылки с учетом языковой приставки: https://example.com/en/user/loginsocial/facebook

Клиентская настройка OAuth

10. Чтобы активировать приложение, перейдите во вкладку Проверка приложения и установите переключатель Сделать приложение доступным для всех в положение Да.

Активируйте приложение

Теперь приложение готово к работе.

11. Во вкладке Настройки/Основное скопируйте Идентификатор приложения и Секрет приложения для последующей вставки в файл /config/social.php. Чтобы увидеть Секрет приложения, нажмите кнопку Показать.

Копируйте Идентификатор и Секрет приложения

Открытый секрет приложения имеет такой вид:

Открытый секрет приложения

12. Включите авторизацию и пропишите полученные данные приложения в файл /config/social.php для пункта Facebook:

  • замените array('id'=>'', 'secret'=>'') на array('id'=>'CLIENT_ID', 'secret'=>'CLIENT_SECRET'),
    где CLIENT_ID — это Идентификатор приложения, а CLIENT_SECRETСекрет приложения;
  • чтобы включить авторизацию, замените 'enabled'=>false, на 'enabled'=>true,

Редактирование блока Facebook

1.3 Google+

1. Авторизуйтесь в Google.

2. Перейдите в консоль Google API: https://console.developers.google.com/project/_/apiui/apis/library?hl=ru

3. Создайте новый проект или выберите существующий.

Создание проекта

4. Найдите и выберите службу Google+ API, кликнув по ней.

Выбор службы Google+ API

5. Включите службу Google+ API.

Включение службы Google+ API

6. Перейдите на страницу Учетные данные.

Перейдите на страницу Учетных данных

7. Откройте вкладку Окно запроса доступа OAuth, заполните форму, подставляя адрес своего сайта вместо example.com, и нажмите кнопку Сохранить.

Открытие вкладки Окно запроса доступа OAuth

Поля Название продукта и URL политики конфиденциальности обязательны к заполнению.

8. Перейдите во вкладку Учетные данные, нажмите кнопку Создать учетные данные и выберите пункт Идентификатор клиента OAuth из выпадающего списка.

Вкладка Учетные данные

9. Заполните форму:

  • Тип приложения: выберите Веб-приложение;
  • Название: введите любое название, например, Авторизация на сайте;
  • Разрешенные источники JavaScript: укажите адрес вашего сайта, например http://example.com;
  • Разрешенные URI перенаправления: введите http://example.com/user/loginsocial/google, где вместо example.com подставьте адрес своего сайта.

Заполнение формы

После создания приложения откроется окно с данными приложения (идентификатор клиента и секрет клиента).

Данные приложения

10. Включите авторизацию и пропишите полученные данные приложения в файл /config/social.php для пункта Google:

  • замените array('id'=>'', 'secret'=>'') на array('id'=>'CLIENT_ID', 'secret'=>'CLIENT_SECRET'),
    где CLIENT_ID — это Ваш идентификатор клиента, а CLIENT_SECRETВаш секрет клиента;
  • чтобы включить авторизацию, замените 'enabled'=>false, на 'enabled'=>true,

Редактирование блока Google

1.4 Одноклассники

1. Чтобы получить права разработчика, перейдите по ссылке https://ok.ru/devaccess и примите соглашение о предоставлении прав разработчика.

2. Перейдите на страницу ваших приложений https://ok.ru/vitrine/myuploaded и нажмите ссылку Добавить приложение.

Добавление приложения на Одноклассниках

3. Нажмите кнопку Подключить OAuth.

Подключение OAuth

4. Заполните форму:

  • Название: введите название, например Example;
  • Картинка 128×128: если необходимо, то укажите прямую ссылку на изображение для вашего приложения;
  • Список разрешенных redirect_uri: укажите адрес http://example.com/user/loginsocial/odnoklassniki, где example.com следует заменить вашим доменом. Если на вашем сайте больше одной локализации, то также вам следует добавить ссылки с учетом всех используемых языков:

Настройка приложения Одноклассники

После нажатия кнопки Сохранить, на адрес, который был указан в процессе получения прав разработчика, придёт письмо. В письме будет информация о приложении: Application ID, Публичный ключ, Секретный ключ.

Письмо с настройками приложения на Одноклассниках

5. Включите авторизацию и пропишите полученные данные приложения в файл /config/social.php для пункта Odnoklassniki:

  • замените array('id'=>'', 'key'=>'', 'secret'=>''), на array('id'=>'CLIENT_ID', 'key'=>'CLIENT_KEY', 'secret'=>'CLIENT_SECRET'),
    где CLIENT_ID — это Application ID, CLIENT_KEY — Публичный ключ приложения, а CLIENT_SECRET — Секретный ключ приложения;
  • чтобы включить авторизацию, замените 'enabled'=>false, на 'enabled'=>true,

Редактирование блока Odnoklassniki

Обратите внимание, что секретный ключ длиннее, чем публичный.

1.5 Yandex

1. Перейдите на страницу добавления нового приложения: https://oauth.yandex.ru

2. Заполните форму со следующими параметрами:

  • Название приложения: любое название, например Example App
  • Платформы: Веб-сервисы
  • Callback URI: http://example.com/user/loginsocial/yandex

Если на вашем сайте больше одной локализации, то также нужно добавить ссылки с учетом языковой приставки:

Ссылки с учетом локализаций

API Яндекс.Паспорта:

  • Доступ к адресу электронной почты
  • Доступ к дате рождения
  • Доступ к логину, имени и фамилии, полу
  • Доступ к портрету пользователя

API Яндекс.Паспорта

3. Нажмите Создать приложение.

После создания приложения откроется окно с его данными (ID и пароль).

Данные приложения

4. Включите авторизацию и пропишите полученные данные приложения в файле /config/social.php для пункта Yandex:

  • замените array('id'=>'', 'key'=>'', 'secret'=>''), на array('id'=>'ID', 'secret'=>'PASSWORD'), где ID — это ID приложения, PASSWORDпароль приложения;
  • чтобы включить авторизацию, замените 'enabled'=>false, на 'enabled'=>true,

Редактирование блока Yandex

2. Регистрация c SMS-подтверждением

Настройку данного режима можно разделить на два этапа: включение режима и настройка SMS-провайдера.

Для того чтобы включить данный режим:

1. Перейдите в раздел админ-панели Настройки сайта/Системные настройки.

2. Во вкладке Пользователи включите настройку Подтверждение номера телефона (users.register.phone). Для этого из выпадающего списка выберите значение включено.

Включение режима регистрации с SMS-подвтерждением

3. Настройте режим:

  • Кол-во повторных отправок SMS: определите максимальное количество повторных отправок SMS-сообщений, по достижении которого будет активирован таймаут.
  • Таймаут повторной отправки SMS: укажите количество минут ожидания при достижении максимально допустимых повторных отправок.
  • Номер телефона в профиле: настройте отображение указанного при регистрации номера телефона в профиле пользователя.

4. Нажмите кнопку Сохранить.


Выполните настройку SMS-провайдера (из доступных для подключения реализован сервис http://sms.ru):

1. Зарегистрируйтесь на сайте провайдера.

2. В разделе кабинета Программистам найдите API ключ (Ваш api_id) в правом блоке и пропишите его в настройке users.sms.sms_ru.api_id в файле /config/sys.php

3. Изучите тарификацию и пополните счет в кабинете сервиса sms.ru.

4. Проверьте работу отправки SMS при регистрации.

Системную настройку users.sms.sms_ru.from, в которой указывается «Имя отправителя», необходимо согласовывать с администрацией sms.ru в разделе http://sms.ru/?panel=mass&subpanel=senders, в противном случае оставьте ее пустой.