Все. Простите меня, если мой вопрос не соответствует теме или тупой вопрос. Я действительно хочу знать, как реализовать механизм аутентификации, такой как GitHub для Plunker. В моем проекте. Я думаю, что у меня такая же ситуация. У меня есть несколько таких сайтов, как Plunker. , и я хочу реализовать сайт авторизации центра SSO или услуги для всех других сайтов, таких как GitHub. , когда я нажимаю кнопку Sign in with GitHub
в Plunker. На веб-сайте откроются новые окна с адресом https://github.com/login?return_to=%2Flogin%2Foauth%2Fauthorize%3Fclient_id%3D7e377e5657c4d5c332db%26redirect_uri%3Dhttp%253A%252F%252Fplnkr.co%252Fauth%252Fgithub%26scope%3Dgist
Как работает аутентификация Plunker
Когда мне удастся войти в систему GitHub. Затем Plunker войдет в систему с аутентифицированным пользователем, которого я только что использовал в GitHub.
Моя проблема: я не знаю, как работает аутентификация между GitHub и Plunker. Не могли бы вы рассказать мне что-нибудь об этом? Он будет назначен. Благодарю.
Чтобы добавить несколько дополнительных сведений в конкретный случай Плункера, пользователь направляется на URL-адрес OAuth 2.0 через вызов 'window.open()' из браузера. Когда транзакция OAuth завершена, веб-сайт по URL-адресу обратного вызова содержит тег '
Как указывалось, процесс входа в систему Plunkr, по-видимому, использует OAuth2 от Github, но удается отключить его на клиенте без перенаправления/перезагрузки с помощью window.open и postMessage. Подробное описание методики можно найти here. demo code выглядит относительно безболезненно.
Проект Gatekeeper, по-видимому, является более полированной реализацией (с узлом.js) этой идеи, и есть подробное руководство по выполнению клиентской аутентификации с ним here.
источник
2016-07-27 16:46:28 mikewilliamson