Web-блог: авторизация через социальные сети

Socialconf

Настройки приложения сохраним в ассоциативном массиве $socialConf следующего вида:

$socialConf[‘client_id’] = YOUR_CLIENT_ID;$socialConf[‘application_key’] = YOUR_APPLICATION_KEY;$socialConf[‘client_secret’] = YOUR_CLIENT_SECRET;$socialConf[‘redirect_uri’] = YOUR_REDIRECT_URI;

Далее

$usrArr

– ассоциативный массив данных пользователя.

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


Существует несколько способов авторизации через социальные сети.

Актуальность данных пользователя

Некоторы данные профиля пользователя могут быть изменены им самим в настройках или же api социальной сети,
при этом id пользователя останется прежнем.

Боковое меню под аватаркой

Здесь разделы в основном по контенту профиля. Для расширения меню нажмите «Ещё».

Если желаете поменять что-то на странице, кликните первый пункт (ваше имя и фамилия).

Поле над аватаркой: добавление фона (кнопка «Установить обложку»).

Щёлкните поле «Напишите заметку», чтобы рассказать друзьям и случайным посетителям о каком-то своём важном событии или просто настроении: введите текст, загрузите при желании дополнительно фото, аудио или видео. Поставьте «галочку» в строке «В статус» и нажмите «Поделиться». Запись будет закреплена в статусе под галереей фото.

В рамках этой статьи мы рассмотрели лишь основные возможности функционала соцсети «Одноклассники». На самом деле их, конечно, больше. Какими-то опциями и настройками вы будете пользоваться чаще. Всё зависит от ваших предпочтений и задач: общение, чтение постов, времяпрепровождение за играми и т.д.

Вариант 1: веб-версия

Обладателям компьютеров не нужно скачивать фирменное приложение или какие-то вспомогательные программы, чтобы войти на свою страницу в Одноклассниках, поскольку это реализуемо через стандартный веб-обозреватель. Однако есть определенные нюансы и особенности сайта, которые нужно учитывать. О них и пойдет речь в следующих способах.

Вариант 2: мобильное приложение

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

Ваше приложение на одноклассниках создано!

https://www.youtube.com/watch?v=wOkRXypmPA8

Но чтобы через него получать email пользователя вам необходимо прислать id приложения (можно взять из письма) и перечень нужных разрешений с описанием кейса их использования на адрес

Верхняя панель

При входе здесь сразу же можно посмотреть, что нового произошло на личной страничке. Количество событий подсвечивается индексом над иконкой раздела. Например, если в пункте «Сообщения» цифра 3, значит, вам прислали три сообщения (друзья или случайные посетители).

Разделы (слева направо):

Сообщение. Панель переписки с пользователями. Есть функция для поиска пользователя (строка запроса над контактами) и настройки уведомлений (значок «шестерёнка» вверху справа).

Вход: стандартная авторизация и проблемные ситуации

Авторизоваться в соцсети, как и на других любых сайтах, можно лишь только в том случае, если был ранее создан аккаунт. И если у вас такого нет, тогда рекомендуем вам прочесть статью о регистрации в Одноклассниках и создать учётку.

Генерация ссылки для аутентификации

Создаем файл ok.php в папке social_login и записываем в него код:

Гостевой и личный профили пользователя

Приложение может получить доступ к информации гостевого или личного профилям пользователя в зависимости
от своих настроек и разрешений пользователя. В гостевом профиле публикуется минимум данных, доступных всем.
В личном профиле публикуется информация доступная друзьям.

Задачи социальной интеграции

Сейчас большинство пользователей интернета имеют аккаунты в социальных сетях (одноклассники, фэйсбук, вконтаке и другие).
Эти социальные сети предоставляют свой api для авторизации на сторонних сайтах. Получается очень удобно имея один аккаунт
в социальной сети, им же подписываться на других ресурсах и постить понравившийся контент.

Под api (application programming interface) следует понимать набор команд (запросов, методов) и формат ответов,
предоставляемых соц. сетью разработчикам и описанных в документации.

Инструкция с картинками: где взять application id, секретный ключ приложения и публичный ключ приложения для oauth2-авторизации через одноклассники? :: дмитрий маслов

Для Oauth2-авторизации на вашем сайте при помощи социальной сети Одноклассники вам понадобятся Application ID, Секретный ключ приложения и Публичный ключ приложения.

Помните! Application ID, Секретный ключ приложения и Публичный ключ приложения — это секретная информация! Её нельзя публиковать, это запрещено правилами Одноклассников. Поэтому, кстати, все данные на скриншотах я заменил на фиктивные — не пытайтесь их никуда скопировать, не сработает.

Во-первых, вы должны быть зарегистрированы на Одноклассниках. И в процессе регистрации обязательно надо указать действующий мобильный телефон, потому что на него будут приходить подтверждения, необходимые для того, чтобы сделать всё необходимое. Указать настоящие ФИО тоже лишним не будет. Это поможет вам в случае чего подтвердить ваши права на аккаунт.

1. Сначала вам надо получить статус разработчика. Вам будет предложено заполнить кое-какие данные о себе, на телефон посредством SMS придёт подтверждение. Проследуйте инструкциям. После того, как вы получите права разработчика, вы попадёте на дэшборд. Там вам предлагают перейти по ссылке, чтобы управлять приложениями. Делайте это.

Web-Блог: Авторизация через социальные сети

2. Все приложения на Одноклассниках, независимо от их назначения, называются играми. Пусть вас это не смущает. Вы попадёте на список ваших приложений (у меня на скриншоте уже есть несколько). Нажмите на “Добавить приложение“.

Web-Блог: Авторизация через социальные сети

3. Теперь нужно указать данные для вашего сайта. Следующие поля обязательно заполнить:

Название. Я написал “Сервер Разработки Маслов-5”.
Короткое имя. Нужно придумать короткое название из латиницы и цифр (дефис тоже можно). В принципе, неважно, что вы там укажете. Я написал “maslov-dev5”.
Описание. Если лень придумывать, можете сюда скопировать название, как это сделал я.
Тип приложения. Нужно выбрать обязательно External

Ссылки на аватарки и иконки. Без них тоже не пустит. Укажите ссылку на какую-нибудь картинку на вашем сайте. Я выбрал вот такую: “http://dev5.vhod-v-lichnyj-kabinet.ru/incognito.png”. Можно одну сразу во все три поля.
Ссылка на приложение. Это ссылка на главную страницу сайта. В моём случае это “http://dev5.vhod-v-lichnyj-kabinet.ru/”

Список разрешённых redirect_uri. В моём случае это “http://dev5.vhod-v-lichnyj-kabinet.ru/user/index/sociallogin/provider/ok/”. Если у вас их по какой-то причине несколько, можете указать несколько, каждую на новой строке.

Клиентская OAuth авторизация. Галка должна стоять.

У меня получилось так:

Web-Блог: Авторизация через социальные сети

После этого, наконец, можно нажать “Сохранить“.

Если всё правильно, приложение будет создано, и вам сообщат, что детали были отправлены на ваш e-mail:

Web-Блог: Авторизация через социальные сети

А в письме оказалось следующее:

Web-Блог: Авторизация через социальные сети

Отсюда берите Application ID, Секретный ключ приложения и Публичный ключ приложения и используйте по назначению!

You can leave a comment with “Facebook”:Не забывайте оставлять комментарии при помощи “ВКонтакте”:

Клиентская oauth авторизация в сети одноклассники, используя delphi 7 | delphi 7 | delphi | обо всём понемногу

Начал заниматься этой темой и не нашел более менее актуальных статей на данный момент. Большинство из них написаны более двух-трёх лет назад и некоторые моменты всё же  изменились.

Всё начинается с создания и регистрации на vhod-v-lichnyj-kabinet.ru своего приложения. Хотя этот процесс более менее описан, но есть кое какие нюансы:

pril

prava

Дальше переходим непосредственно к авторизации. Кинем на форму компонент Edit и WebBrowser. Edit1 будет отображать адресную строку браузера WebBrowser.

form1

Важно правильно составить только строку авторизации. Сам код (использую synapse библиотеку):

unit Unit2;interface
 
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,Forms,
Dialogs, StdCtrls,synacode,httpsend,ssl_openssl, OleCtrls, SHDocVw, Menus,
ComCtrls, ExtCtrls, Buttons, ActiveX,ClipBrd;
 
type
TForm2 =class(TForm)
WebBrowser1: TWebBrowser;
Edit1: TEdit;procedure FormShow(Sender:TObject);
 
procedure SaveOptions;procedure WebBrowser1DocumentComplete(Sender:TObject;const pDisp: IDispatch;var URL: OleVariant);private{ Private declarations }public{ Public declarations }end;
 
var
Form2: TForm2;
 
implementation
 
{$R *.dfm}
 
procedure TForm2.FormShow(Sender:TObject);begin
Form2.WebBrowser1.Navigate('https://connect.ok.ru/oauth/authorize?client_id=ваш_id&scope=GROUP_CONTENT;VALUABLE_ACCESS;LONG_ACCESS_TOKEN&response_type=token&redirect_uri=' EncodeURL(AnsiToUtf8('https://api.ok.ru/blank.html')) '&layout=w');end;
 
procedure TForm2.WebBrowser1DocumentComplete(Sender:TObject;const pDisp: IDispatch;var URL: OleVariant);begin
Edit1.Text:=URL;end;
 
end.

Примечания к коду:

Компилируем и запускаем. Сразу браузер перейдет по строке авторизации и предложит ввести логин и пароль.

login

после правильного ввода логина и пароля, браузер перейдет к строке редиректа, в которой через символ решетки будет указаны  access_token и  session_secret_key

asse

Собственно, получив эти два значения мы можем пользоваться методами API OK и отправлять запросы. Задача выполнена.

P.S. Конечно, большинство интересуются методами, связанными с поиском пользователей. Но таких методов, к сожалению, нет и найти конкретного человека или группу людей по своему запросу не получится. Одноклассники таят эти методы в своих недрах и никого к ним не подпускают. Поэтому так мало информации по работе с методами этой соцсети, т.к. функционал предоставляет очень скудный.

Личная страница

Личный кабинет в соцсети имеет несколько панелей-меню для быстрого доступа (полоска кнопок вверху, ниспадающий список по клику авы, вертикальное меню слева, над лентой). Некоторые опции дублируются для удобства, чтобы можно было быстро воспользоваться, находясь в любой зоне странички. Рассмотрим их детально.

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

На мобильных устройствах проблемы с входом в Одноклассники через приложение возникают реже даже на территории стран, где эта социальная сеть запрещена, однако иногда они все-таки случаются и на экране появляется сообщение «Ошибка загрузки данных». Тогда понадобится установить приложение, обеспечивающее VPN-подключение, что и позволит обойти блокировку.

Не забывайте, что такого рода приложения весь интернет-трафик пропускают через себя, поэтому VPN лучше отключать после завершения использования Одноклассников хотя бы потому, что скорость соединения на время подмены местоположения чаще всего заметно снижается.

Обход блокировки сайта

В большинстве случаев проблемы с использованием сайта Одноклассники возникают у жителей Украины, поскольку веб-ресурс заблокирован на территории этой страны. Для обхода ограничений необходимо использовать VPN — средство для создания виртуального подключения с подменой текущего местоположения.

Один redirect_uri для всех соц. сетей


Поскольку все соц. сети обращаются методом GET с параметром code на страницу авторизации redirect_uri
их необходимо как-то идентифицировать.

Панель в новостной ленте

Это не что иное, как набор фильтров отображения. Он призван помочь вам просмотреть последние события по интересующей теме: что новенького на страницах друзей, в играх, группах. Плюс к этому через «Поиск» в панели отыскивается всё, что нужно.

Пользовательское меню

Открывается по клику аватарки в верхней панели (справа от поисковой строки). Из этой панели можно быстро перейти к опциям первой необходимости, связанным с настройкой учётной записи.

Пополнить счёт. Внутренняя валюта соцсети «оки» (OK) позволяет покупать подарки, пользоваться дополнительным функционалом на странице и в играх. Её можно заработать будучи активным пользователем «Одноклассников» или купить за реальные деньги.

Закрыть профиль. Глобальная настройка приватности. Не хотите предоставлять доступ к своим заметкам посторонним, активируйте опцию и выполните необходимые настройки.

Включить невидимку. Для всех желающих оставаться невидимыми при посещении страниц других пользователей. В разделе «Гости» вместо аватарки будет отображаться «невидимка». Только и всего. Никаких данных и фото. Но услуги конспирации платные. За пользование «шапкой-невидимкой» ровно один день от вас потребуется 49 ОК.

Изменить настройки. Переход на страницу настроек профиля. Каждому типу параметров соответствует свой подраздел:

– Основные. Добавление/редактирование личных данных (имя и фамилия, место проживания), пароль, email, номер телефона, ссылка на страницу. Номер ID учётной записи (полезно отдельно хранить, может пригодиться для обращения в техподдержку по разным вопросам).

– Публичность. Конфигурируйте доступ: какие данные страницы кто может видеть, а кто нет (например, Игры – Только друзья).

– Уведомления. Система ОК устроена так, что по умолчанию информирует пользователей практически обо всём происходящем в профиле (оценки, приглашения, мероприятия и т.д.). Если какие-то новости не интересны, просто отключите их в этом подразделе.

– История посещения. Учуяли неладное на странице – фотографии исчезли, статус поменялся, сообщения появились, которые вы не отправляли и прочее – бегом в эту опцию! Проанализируйте IP и время посещения. Логи помогут установить факт несанкционированного доступа.

– Чёрный список. «Каталог» заблокированных контактов. Если нужно разбанить: клик правой кнопкой по аве → Разблокировать.

Русский. Текущая языковая локализация сайта. Для изменения откройте и выберите другой необходимый язык в списке.

Регистрация нового приложения

Чтобы создать новое приложение перейдите по этой ссылке. Далее нажимаем на “Подключить oAuth” и заполняем форму.

Введите название приложения, путь к картинке размером 128×128. Укажите так же Список разрешённых redirect_uri, это список ссылок, на которые приложению разрешено делать редирект во время авторизации OAuth (параметр redirect_uri).

Теперь нажимаем на кнопку Сохранить и видим сообщение об успешном содании приложения.

Проверяем почту и видим там письмо от Одноклассников, в котором:

Решение возможных проблем

В завершение разберем несколько трудностей, которые время от времени возникают у небольшого числа пользователей. Во-первых, иногда не получается вспомнить пароль, чтобы войти на свою страницу, из-за чего непонятен принцип следующих действий для тех, кто ранее не сталкивался с такими проблемами.

Во-вторых, еще реже аккаунт блокируется/удаляется разработчиками или возникают другие трудности с авторизацией. В этом случае подойдет только вариант с обращением в техническую поддержку, чтобы администрация предоставила ответ на вопрос и помогла восстановить доступ. Детальнее обо всем этом читайте в статьях по следующим ссылкам.

Подробнее:Обращение в техническую поддержку ОдноклассниковВосстановление пароля в Одноклассниках

С использование api социальных сетей


Принцип авторизации примерно одинаков для всех социальных сетей:

С использованием api сторонних разработчиков

Можно использовать виджеты сторонних разработчиков, например uLogin или другие.

    Преимущества такого подхода:

  • Широкий выбор социальных сетей для авторизации. Нет необходимости собственноручно регистрировать и настраивать
    ваше приложение в социальной сети, можно даже не заводить собственный аккаунт
  • Формат ответа при авторизации будет содержать набор стандартных заголовков полей, нет необходимости кастомизировать
    скрипт авторизации для каждой социальной сети. Вам не придется изучать документацию по методами работы с api
    Недостатками будут:

  • Проблемы с api сторонних разработчиков, как недоступность их серверов, изменение формата ответа, обязательно
    скажутся на работе скрипта авторизации на вашем сайте и на ваших пользователях.
  • api самих социальных сетей дают возможность получить гораздо больше информации о пользователях,
    чем позволяют сторонние разработки
  • Нет гарантии что информация пользователей будет передаваться только вам и не
    будет использована разработчиками в своих интересах. Нет гарантии что вам дадут достоверную информацию о
    пользователях.
  • Для передачи данных в совокупности потребуется выполнить большее количество запросов, что скажется на времени
    работы скрипта.

Способ 1: стандартная авторизация

Если вы только начинаете свое знакомство с этой социальной сетью, скорее всего, вы только зарегистрировались и пользовались ей в рамках одного сеанса, после чего вышли, сменили браузер или выход выполнился автоматически после перезагрузки компьютера/веб-обозревателя. Тогда для повторной авторизации необходимо произвести следующие действия:

Перейти на официальный сайт Одноклассники

Способ 3: переключение профилей

Метод с переключением профилей актуален только в том случае, если в одном браузере используется сразу несколько аккаунтов в Одноклассниках одним или разными пользователями. Для удобного переключения сначала понадобится выполнить ряд действий, чтобы данные сохранились и в будущем этот процесс занимал не много времени.

  1. В текущем аккаунте вызовите меню, нажав по значку с аватаркой, и нажмите «Войти в другой профиль».

    Кнопка переключения учетных записей для входа в Одноклассники на компьютере

  2. Выполните вход во второй аккаунт, а если он не отображается в списке, нажмите кнопку «Добавить профиль» и заполните поля точно так же, как это было показано в Способе 1.

    Выбор учетной записи переключения для входа в Одноклассники на компьютере

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

    Меню переключения для входа в Одноклассники на компьютере

Способ №2: приложение

1. Найдите в официальном магазине приложений (например, для Android – Google Play) Одноклассники. Установите на телефон.

2. Запустите приложение. Укажите свои учётные данные.

Что касается выбора способа входа в OK на мобильном, определяться вам. Но как показывает практика, приложение удобней и, самое главное, безопасней.

Заключение


Авторизация через социальные сети не является чем-то сложным, процесс авторизации очень похож для разных
социальных сетей и это очень упрощает разработчикам социальную интеграцию приложений.

Похожее:  PHP: Using cURL with Basic HTTP Authentication.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *