Я, кажется, впал в недоразумение, которое имеют другие - вопрос был о внешней авторизации. Лично я бы доверял только распределенной авторизации в локальной сети, где у меня есть контроль над серверами аутентификации и авторизации. Я бы никогда не использовал внешнюю авторизацию на веб-сайте.
Ниже приведены мои комментарии по OpenID в качестве службы аутентификации.
1) Как было указано, авторизация! = Аутентификация. OpenID обрабатывает аутентификацию, но владелец веб-приложения по-прежнему имеет полный контроль над правами, назначенными этому логину. Это положительно, но путаница в этом отрицательна.
2) Я не могу найти ссылку, но OpenID открыт для социальной инженерии / main в середине / фишинговых атак. Поставщики пытаются предотвратить это (идентификационные изображения, сертификаты браузера, подтверждение обратного вызова и т. Д.), Но это не помогает, когда на сайте черной шляпы появляется диалоговое окно / страница с надписью «введите имя пользователя и пароль OpenID» и гениальность пользователь соответствует.
3) Каждый поставщик федеративного идентификатора имеет возможность (и некоторые назовут ответственность) отслеживать все действия своих пользователей, независимо от того, для какого сайта они используют идентификатор. Вот почему Google и Yahoo очень хотят предоставить федеративных идентификаторов, но не так рады, что потребляют их.
4) В противоположность вышеприведенному комментарию, как правило, использование OpenID уменьшает барьер для регистрации, особенно когда полезный пользовательский интерфейс указывает, что новый пользователь, вероятно, уже имеет OpenID. Это еще более верно, когда вы используете комбинированное решение OpenID / OAuth, такое как RPX.
Так что, с моей точки зрения, риски использования OpenID лежат на пользователе, а не на веб-сайте. Я не могу предотвратить фишинг пользователя, заставив его вспомнить еще один идентификатор пользователя и пароль. Кроме того, Black Hats не нужно делать ничего более гнусного, чем хранить пароли пользователей для своего сайта в виде простого текста, чтобы получить доступ к другим учетным записям пользователя. Сколько людей используют разные пароли для каждого веб-сайта, на котором выполняется вход?