2016-12-22 1 views
0

Я пытаюсь понять, в каких сценариях я должен использовать oauth. От чтения spec я понимаю, что вы по сути делегируете идентификацию третьей стороне.Как понять, когда используется oauth

Так что, если мы возьмем страницу входа в систему в качестве примера StackOverflow, Вы автоматически получаете

stackoverflow login

oauth2 используется для Google и Facebook, как я могу определить, что StackOverflow использует (при вводе имени пользователя и пароля непосредственно)? Будет ли это также oauth 2? Если он использует oauth, как мне понять, какой поток они используют?

ответ

0

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

+0

К сожалению, этот OAuth материал довольно запутанным для меня, я просто пытаюсь понять, что другие люди делают это Я могу связать его с моей проблемой. Я понимаю, что это протокол, я пытаюсь выяснить, используют ли они протокол и какой поток они используют, например, - Credentials Password Credentials Grant или Implicit Grant и т. Д. - Есть ли способ рассказать? –

+0

В чем проблема? –

0

Посмотрите, что это запрос URL при нажатии войти в систему с Gmail ...

https://accounts.google.com/ServiceLogin?passive=1209600&continue=https://accounts.google.com/o/oauth2/auth?client_id%3D717762328687-p17pldm5fteklla3nplbss3ai9slta0a.apps.googleusercontent.com%26scope%3Dprofile%2Bemail%26redirect_uri%3Dhttps://stackauth.com/auth/oauth2/google%26state%3D%257B%2522sid%2522:1,%2522st%2522:%2522e35d652c26ae7fad9b61f6176cc93f2eb9bbb240c32231bc95f8270176d7a5d5%2522,%2522ses%2522:%252291fdf487240d4fa38576f780ad448f55%2522%257D%26response_type%3Dcode%26from_login%3D1%26as%3D-8520e47ae71bbb4&oauth=1&sarp=1&scc=1#identifier

ли это auth2 означает oauth 2? Я так думаю

UPD: Насколько я понимаю, механизм OAuth поддерживается 3-й частью. SO может использовать свою собственную команду для прямого ввода или стандартную аутентификацию. Это до SO.

+0

Я понимаю, что oauth 2 используется для google и facebook, о чем я спрашиваю, это о встроенной аутентификации. –

0

Чтобы держать его коротким и легким:

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

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

Если вы хотите гораздо более подробные технические объяснения, я предлагаю вам прочитать эту другую должность StackOverflow: OAuth 2.0: Benefits and use cases — why?

+0

Это имеет смысл, но скажем, я не хочу, чтобы мои клиенты имели учетные записи gmail/twitter/stackoverflow, чтобы сделать тяжелый подъем, мне нужно было бы правильно реализовать свой собственный сервер идентификации? Я предполагаю, что у stackoverflow есть свой собственный сервер идентификации для своего веб-сайта? Обратите внимание, что у меня уже есть настройка auth с приложением (рубиновый камень). Нам нужно немного тяжелее, чтобы пользователи могли аутентифицироваться на всех наших платформах сразу (один знак). Мы также хотим защитить API и т. Д. –

+0

Вот почему, как общая идея, все сайты теперь позволяют использовать учетную запись gmail/twitter/stackoverflow или создавать новую учетную запись по-старому. Является ли улучшение безопасности/пользовательского опыта, если оно не соответствует вашему законопроекту, просто не используйте такую ​​функцию. – Pitto

Смежные вопросы