Oauth Вконтакте что это

REDIRECT_URI — нужно вводить только их blank.html, в любом другом случае:

Re: oauth.vk.com/blank.html и что?

Сообщение Александр » 05 июл 2012, 19:45

nepster
Standalone на PHP? Поподробнее расскажи.

Re: oauth.vk.com/blank.html и что?

Сообщение nepster » 07 июл 2012, 16:23

у меня есть форум, тоесть сторонний сайт. Мая задача обеспечить пользователя возможностью при выборе галочки, постить сообщения одновременно на форум и в соц. сети. Тоесть нужны расширенные методы, а именно wall.post

Везде советовали создавать Standalone приложения. Я 1 раз работаю с api соц. сетей, твиттер и фейсбук дался без особых проблем, вот с контактом пока проблема.
Подскажите пожалуйста какой нужен вид приложения для подобных действий (wall.post на стороннем сайте )

Re: oauth.vk.com/blank.html и что?

Сообщение nepster » 07 июл 2012, 18:23

П.С. авторизация работает, но при попытки использовать wall.post:

Re: oauth.vk.com/blank.html и что?

Сообщение Александр » 07 июл 2012, 19:36

Источник: flapps.ru

Pop-up авторизации ВКонтакте для протокола OAuth 2.0

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

На странице «Авторизация сайтов» сказано: «Для начала процесса авторизации необходимо создать окно браузера и открыть в нём диалог авторизации». Но ни слова не сказано о том, как создать такое окно.

У Facebook есть свой метод JavaScript FB.login для этой цели. У OpenAPI «В Контакте» есть VK.Auth.login. А для OAuth 2 «В Контакте» нет ничего.

«Ну что же, challenge accepted», — сказал я себе. И решил написать свой метод.
Вот что у меня получилось:

function vk_popup(options)
var
screenX = typeof window.screenX != ‘undefined’ ? window.screenX : window.screenLeft,
screenY = typeof window.screenY != ‘undefined’ ? window.screenY : window.screenTop,
outerWidth = typeof window.outerWidth != ‘undefined’ ? window.outerWidth : document .body.clientWidth,
outerHeight = typeof window.outerHeight != ‘undefined’ ? window.outerHeight : ( document .body.clientHeight — 22),
width = options.width,
height = options.height,
left = parseInt(screenX + ((outerWidth — width) / 2), 10),
top = parseInt(screenY + ((outerHeight — height) / 2.5), 10),
features = (
‘width=’ + width +
‘,height=’ + height +
‘,left=’ + left +
‘,top=’ + top
);
return window.open(options.url, ‘vk_oauth’ , features);
>

function doLogin() var win;
var redirect_uri = ‘http://MY_APP/vk_auth/’ ;
var uri_regex = new RegExp(redirect_uri);
var url = ‘http://oauth.vkontakte.ru/authorize?client_id=CLIENT_IDredirect_uri=’ + redirect_uri;
win = vk_popup( width:620,
height:370,
url:url
>);

Еще по теме:  Почему не работает vk style

var watch_timer = setInterval( function () try if (uri_regex.test(win.location)) clearInterval(watch_timer);

setTimeout( function () win.close();
document .location.reload();
>, 500);
>
> catch (e)

Сначала создаю окно с диалогом авторизации, которое выглядит в точности, как аналогичное для OpenAPI.

image

Затем таймером отслеживаю изменение текущего URL в этом окошке, чтобы определить, когда «В Контакте» перенаправит на мой URL авторизации. И жду 500 мс, чтобы сервер уж точно успел обработать запрос. После этого перезагружаю основное окно своего сайта.

Обёртывать обращение к win.location в try <> catch(e) <> необходимо, потому что политика кросс-доменности не позволяет узнавать URL’ы окон других сайтов.

Хотелось также сделать это через какой-нибудь Observer, который бы наблюдал за изменением win.location и оповещал о событии, но подходящих примеров я не нашёл и JavaScript не моя основная специализация, поэтому остановился на реализации таймером. Буду благодарен, если кто-нибудь подскажет, как перевести на события.

Надеюсь, эта заметка будет полезной людям.

  • социальные сети
  • вконтакте
  • oauth 2.0
  • попап
  • пользовательские интерфейсы

Источник: kildekode.ru

Авторизация с помощью открытого протокола OAuth

Приветствую вас, дорогие друзья! Сегодня я подготовил статью, в которой намерен рассказать об авторизации на внешних ресурсах через OAuth. Открытый протокол OAuth имеет много общего со стандартом OpenID, но при этом они остаются независимыми друг от друга.

Oauth

OAuth — это протокол авторизации, который позволяет пользователю получить права на использование какого-либо ресурса (сайта или приложения) не передавая логин и пароль третьей стороне.

Открытый стандарт OpenID, который является средством децентрализованной системы аутентификации, всего лишь позволяет удостовериться, что пользователь — именно тот, за кого себя выдаёт и не более. А протокол OAuth позволяет авторизовать пользователя и выполнять действия от его имени — это основное и существенное отличие.

Еще по теме:  Как установить свою игру Вконтакте

Использование OAuth 2.0 для доступа к API Google

Google API используют протокол OAuth 2.0 для аутентификации и авторизации. Google поддерживает работу с веб-серверами и клиентскими приложениями. Реализация сценария аутентификации соответствует спецификации OpenID Connect и прошла сертификацию в OpenID Foundation.

OAuth Google API

Для начала работы необходимо получить учетные данные клиента OAuth 2.0 в консоли Google API. Затем ваш сайт или приложение запрашивает токен доступа с сервера авторизации Google, извлекает токен из ответа и отправляет его в API Google, к которому вы хотите получить доступ. Разработчикам доступна для экспериментов тестовая площадка OAuth 2.0 Playground.

OAuth-авторизация с помощью API Яндекс ID

API Яндекс ID также использует открытый протокол авторизации OAuth 2.0. Для доступа к данным пользователей разработчику необходимо зарегистрировать своё приложение на сервисе Яндекс.OAuth, реализовать получение и обработку OAuth-токенов, а затем предоставить пользователям интерфейс входа через Яндекс.

Yandex OAuth

При использовании OAuth-протокола пользователь не вводит свой пароль на другом сайте, поэтому учётная запись надёжно защищена и не может быть скомпрометирована. Таким образом пользователи Яндекса могут зарегистрироваться и войти в свой аккаунт на стороннем сайте, не заводя новую учётную запись.

Использование Mail ID для OAuth-авторизации

Mail ID предлагает разработчикам API для работы c OAuth-авторизацией Почты Mail.ru. Владелец сайта может добавить кнопку для входа пользователей под своим почтовым аккаунтом. Авторизация API Mail.Ru также основана на протоколе OAuth 2.0.

Mail ID

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

Вход через Сбер ID

Сбер ID — это единый аккаунт для доступа к сервисам и партнёрам Сбербанка. Для подключения Сбер ID разработчику необходимо заключить договор на предоставление сервиса, затем настроить свой сайт или приложение в соответствии с рекомендациями банка.

Еще по теме:  Как сделать сову в ВК на Андроид

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

Open API для авторизации пользователей ВКонтакте

Open API — это система, которая предоставляет пользователям ВКонтакте возможность авторизовываться на вашем сайте. Перед началом работы с Open API необходимо создать новое приложение с типом «Веб-сайт» или «Standalone» и следовать дальнейшим указаниям помощника.

Open API

Это приложение позволяет использовать на сайте все текущие методы ВКонтакте API и упрощает регистрацию новых пользователей, если у них уже есть учётная запись ВКонтакте. SDK (Software Development Kit) содержит готовые реализации основных функций API, библиотеки для популярных платформ используют авторизацию OAuth 2.0 для взаимодействия с API.

Заключение

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

API

Свои API для реализации входа на внешние ресурсы имеют Госуслуги (Единая система идентификации и аутентификации), Одноклассники, Twitter, Facebook, GitHub, а также многие другие компании и организации.

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

Являясь современным стандартом идентификации, OAuth использует SSL для сохранения конфиденциальности данных, получает ограниченный доступ к личной информации пользователей, используя специальные токены. На этом всё, буду рад ответить на вопросы.

Источник: webliberty.ru

Рейтинг
( Пока оценок нет )
Загрузка ...