Делегувати OpenID Google (НЕ Google Apps)


85

Чи можна використовувати мій особистий веб-сайт / блог для входу на сайти, які використовують openid , та делегування до мого облікового запису Google?


Добре, я шукав це питання на SO, але хорошої відповіді не було. Провівши деякий час, я придумав, як це зробити. Я збираюся відповісти на це сам, як спосіб поділитися цим.


3
Додайте відповідь на власні питання позначкою як правильну, таким чином кожен побачить, на що була відповідь, більш наполегливим способом
Оскар К’єллін

Дякую Оскару за підказку! Однак я не можу позначити відповідь як правильну зараз. Там сказано, що я повинен почекати до завтра.
Ріо

Я переніс відповідь із питання на вашу відповідь, сподіваюся, ви не проти, але це те, як зазвичай використовується SO.
Том Робінсон,

@tjrobinson велике спасибі! :)
Ріо

1
Мені б хотілося, щоб питання не було змінено, бо зараз я не розумію відповіді.
Ерік Фальскен,

Відповіді:


98

Тепер можна делегувати OpenID у свій обліковий запис Google (а не в Google Apps) .

Ні, це не використовується демонстраційний постачальник OpenID за допомогою App Engine. Це ваш РЕАЛЬНИЙ обліковий запис Google!

Спочатку потрібно ввімкнути свої профілі Google . Спробуйте переглянути свій профіль і відредагувати його, має бути можливість встановити URL-адресу вашого профілю. Ви можете вибрати два варіанти: або використовувати ім’я свого облікового запису Gmail (без частини @ gmail.com) як ідентифікатор свого профілю, або випадковий номер, призначений вам. Ви самі вирішуєте, який із них використовувати. У будь-якому випадку, цей ідентифікатор - це ідентифікатор вашого профілю нижче.

Тепер додайте наступний HTML-код на свою делегуючу сторінку:

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud?source=profiles" /> 
<link rel="openid2.local_id" href="https://profiles.google.com/[YOUR PROFILE ID]" /> 

І це зроблено. Тепер спробуйте увійти ТАК за допомогою власної URL-адреси!


1
Чи можна мати для мене сторінку делегування хоста Google, як це робить MyOpenID?
Piotr Dobrogost

4
Оскільки google зараз все розмножено, URL-адреса profile.google.com більше не є тим, що ви отримуєте, перейшовши до "мого профілю", однак, якщо ваш профіль plus.google.com/107217643432815688625/posts, то profile.google.com/ 107217643432815688625, здається, все ще працює як ваш openid2.local_id
smoofra

8
В даний час з G +, вам потрібно поставити:<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud" /> <link rel="openid2.local_id" href="https://plus.google.com/GPLUSID" />
Себі

1
@ChrisQuenelle Згідно з моїм досвідом, коли ви змінюєте свого делегата, трапляється лише те, що вас скеровують на новий сайт для автентифікації. Перший сайт все ще знає вашу особу як будь-який сайт, з якого ви делегуєте. Тому дуже легко змінити постачальника аутентифікації.
Ilari Kajaste

2
@Sebi, я спробував ваші linkелементи, але він використовував мою особу Google як мою заявлену особу, а не мою делегуючу URL-адресу *. Крім того, він запитав мене, який обліковий запис з моїх двох зареєстрованих облікових записів я хотів би використовувати, тому, мабуть plus.google.com, неправильне ім’я хосту для використання. profiles.google.comНатомість я використовував своє ім’я gmail, і воно працювало, як очікувалося. Я не перевіряв, як використовувати profile.google.com з ідентифікацією Plus. * SuperUser просив створити новий обліковий запис, myname@gmail.comа не входити до мого існуючого облікового запису на основі URL-адреси OpenID, яку я йому вказав.
clacke

8

Незважаючи на те, що говорить прийнята відповідь, вам не потрібно приєднуватися до Google+, щоб використовувати Google як делегат, оскільки у вас вже є місцевий ідентифікатор, який є частиною вашого електронного листа, що передує @.

Враховуючи наявний обліковий запис Google some-name@gmail.com, вам просто потрібні наступні два посилання у headрозділі сторінки делегатів :

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud">
<link rel="openid2.local_id" href="https://profiles.google.com/some-name">

Я щойно зробив це і переконався, що працює, не приєднавшись до Google+.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.