Коллеги,
при использовании OpenID для аутентификации пользователей в длительном промежутке времени возникает интересная ситуация - провайдеры периодически меняют identity пользователя и при повторном входе не удается его сопоставить со старой учетной записью.
Например, ранее mail.ru выдавал
identity = http://my.mail.ru/mail/user/
а теперь
identity = https://my.mail.ru/mail/user/
Google:
identity = https://www.google.com/accounts/o8/id?id=xxxsecret
а теперь
identity = https://plus.google.com/1134263392342342341234
Яндекс не отстает от гугла:
identity = http://openid.yandex.ru/user/
а теперь
identity = https://login.yandex.ru/1232414
Вот как теперь на автопилоте идентифицировать пользователя? По полю E-mail нельзя, так как его можно подделать.
Старый или не старый протокол, может круче и oAuth, но текущими авторизациями что делать?
Пока составлял это расследование уже подумал парсить identity в hostname и по нему сравнивать? Не переедет Яндекс потом на
https://login.yandex/?