WEB

OAuth / OpenID Протоколы

OAuth протокол
OAuth — популярный протокол, который позволяет сервисам интегрироваться между собой и дает безопасный способ обмена персональной информацией. OAuth может связать между собой 2 сервиса, каждый из которых имеет свою пользовательскую базу.

Пример.
Форма состоит из единственной кнопки — «Импортировать контакты». После нажатия на нее пользователя временно редиректят на GMail, где он вводит свой логин и пароль (а если уже авторизован, то ничего не вводит). Далее пользователя возвращают обратно на наш сайт, где скрипт уже получает возможность скачать контакты через внутренний API GMail.


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

Отличия OAuth от OpenID

OAuth часто называют «протоколом для роботов», в отличие от OpenID — «протокола для пользователей».


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

(И потом можно без ввода пароля входить на сервис, будучи авторизованным «где-то».) Например, если у вас есть аккаунт на Яндексе, вы сможете «входить» с его помощью на любой сервис, поддерживающий OpenID-авторизацию.
2. OAuth — протокол для авторизованного доступа к стороннему API. OAuth позволяет скрипту первого приложения получить ограниченный API-доступ к данным второго приложения, если пользователь дает добро. Т.е. это средство для доступа к API.

© 2021 QAstart.by