berpcor/sauth

There is no license information available for the latest version (dev-master) of this package.

Laravel's social auth package. Vk, odnoklassniki, mailru, google, yandex, facebook

dev-master 2014-02-16 19:46 UTC

This package is not auto-updated.

Last update: 2024-11-23 16:19:07 UTC


README

Авторизация через социальные сети для Laravel 4.1

Расширение, необходимое для авторизации через социальные сети. Поддерживаются: vk, odnoklassniki, facebook, google, yandex, mailru.

Требования.

Данное расширение устанавливается тогда, когда создана стандартная регистрация (например, штатными средствами Laravel). Оно добавляет в существующую таблицу (она должна называться users) нужные поля. Файл миграции - в комплекте. Также, в таблице должно присутствовать поле name. Оно не создается в миграции, но необходимо. Как правило, оно стандартно для всех таблиц пользователей.

Установка.

После установки с помощью composer'а, необходимо добавить сервис провайдер в файл config/app.php

'Berpcor\Sauth\SauthServiceProvider',

Использование.

Указываются настройки для необходимых социальных сетей. После этого в нужном месте на нужной странице нужно сгенерировать ссылку для авторизации.

Sauth::linkFor('имя-соц-сети');

Возможные варианты: vk, odnoklassniki, facebook, google, yandex, mailru.

Эту ссылку нужно вставить в атрибут href.

В настройках указывается, в том числе, и URI, на который будет происходить переадресация. Для этого URI должен быть создан маршрут. В контроллере или замыкании для этого маршрута должен быть вызван метод Sauth::attemptVia('имя-соц-сети'). Имя соц. сети - то же самое, что и при генерации ссылки.

При удачной авторизации - получении токена - происходит прозрачный процесс регистрации. Если пользователя с таким социальным ID нет в таблице пользователей, то происходит его добавление с некоторой информацией (). Если пользователь с таким социальным ID существует, то происходит проверка актуальности данных о нем в БД и если данные были обновлены пользователем в социальной сети, то эти же данные обновляются и в БД сайта. В результате происходит авторизация пользователя станартным классом Auth.