Что преимущества и недостатки к использованию OpenID?

Добавьте frameBorder атрибут (отметьте капитал ‘B’ ).

, Таким образом, это было бы похоже:

<iframe src="myURL" width="300" height="300" frameBorder="0">Browser not compatible.</iframe>
6
задан waiwai933 20 July 2009 в 02:08
поделиться

3 ответа

Преимущества

у вас есть единый вход, что на самом деле довольно круто, особенно для людей, имеющих много учетных записей здесь и там.

Сервер openid предоставляет основную информацию о пользователю, избавляя от необходимости каждый раз записывать обычную основную информацию. В этом смысле вы избавляете своих пользователей от лишних хлопот.

Это довольно хорошо улучшает традиционный механизм пользователь / пропуск. Существует множество сайтов, предлагающих обе системы одновременно.

Перемещает доверие к честности с нескольких сторон только к одной. На данный момент я не знаю, хранит ли какой-либо из сайтов, на которых я зарегистрирован, мой пароль в виде открытого текста, чтобы украсть его, и пытается ли он использовать его на других сайтах, предполагая, что у меня такой же пароль.

Техническое преимущество делегация. Вы не обязаны использовать одного и того же провайдера. Вы можете переключиться.

Недостатки

Вы все равно должны предоставить пользователя / пароль тем, кто не понимает новую парадигму или у них нет openid (может быть, он у них есть, но они не знают). Если вы пытаетесь обратиться к широкому кругу людей, вы можете отпугнуть их.

Кроме того, я бы не стал использовать это ни для чего серьезного. Я бы не стал доверять своему банку, который просит меня войти в систему с моим openid, но также и со многими сайтами электронной коммерции. Это нормально для неважных вещей.

Провайдер openid может отслеживать привычки пользователей, поскольку они получают все запросы авторизации. Вот почему я развернул своего личного провайдера.

Наконец, насколько я видел, во многих случаях серверы openid перемещают пароль в открытом виде, но это мое понимание, и я могу ошибаться. Я развернул собственного провайдера openid,

5
ответ дан 17 December 2019 в 00:13
поделиться

Главное преимущество, которое я вижу, хотя оно не обязательно применимо в вашем случае, если вы хотите сохранить существующую систему, состоит в том, что мне не нужно беспокоиться о хранении паролей.

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

Теперь для пользователя он может законно иметь только один пароль для всего. Они используют провайдера OpenID, которому доверяют, вместо того, чтобы доверять любому Том Дику или Гарри в Интернете свой веб-сайт.

1
ответ дан 17 December 2019 в 00:13
поделиться

Хорошо, если взять в качестве примера SO, он поддерживает оба. Я вхожу в систему, используя свою учетную запись Google через OpenID, но мне все равно нужно иметь учетную запись / имя пользователя для связи с моим OpenID. Я предполагаю, что вы разрешаете вход только через OpenID, но не разрешаете пользователям входить в систему, используя ваш сайт в качестве сервера OpenID.

Итак, чтобы прояснить ситуацию; Вы можете использовать много кода входа / выхода, и он вам понадобится, потому что единственная разница в том, что вы аутентифицируетесь через стороннюю организацию, а не через свою собственную базу данных. В псевдокоде представьте себе это:

authenticate_from_db(String username, String password)
{
      fetch username and password where username = username
      if username = username and password = hash_of(password)
      { 
           return true;
      } 
      else
      {
          return false;
      }
}

authenticate_from_openid(String openId_provider)
{
     provider = contact_openID_provider(openID_provider)
     if(provider)
     {
         login.username = map(returned_user, your_db)
         return true
     }
     else
     {
        return false;
     }
}

Итак, вы видите, в основном процесс аутентификации изменяется, в то время как ваш собственный все еще используется.

Преимущество довольно очевидно:

  • Разрешение пользователям входить в систему с существующими учетными записями через их OpenID провайдер.
1
ответ дан 17 December 2019 в 00:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: