Делегирование OpenID

30.09.2009 | Рубрика: Сервисы

Делегирование Страшное слово делегирование в первом приближении можно понимать, как синоним слова «передача». Обычно оно употребляется в контексте типа «пользователь A делегировал свои права доступа пользователю B». Однако в данной статье речь пойдет о другой виде передачи, а именно о том, как вместо длинного OpenID типа web20su.livejournal.com использовать короткий, например web20.su.

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

Действительно, собственное доменное имя:

  • уникально;
  • как правило, короче какого-нибудь web20su.livejournal.com;
  • и при этом однозначно идентифицирует своего владельца.

Почему-то многие блогеры допускают одну и ту же ошибку. Они пытаются создавать собственный OpenID сервер (последний, надо отметить, является обыкновенным CGI приложением). Итак, они качают готовые скрипты (обычно на PHP), понимают, что они не работают или работают не всегда хорошо, начинают пытаться переписать сервер, терпят неудачу, пытаются писать OpenID сервер с нуля, лезут в спецификацию протокола, а там такое… Все эти телодвижения совершать не требуется, если только вы не хотите позволить пользователям входить под OpenID на вашем собственном сайте.

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

Допустим, у вас имеется N – любое натуральное число – собственных сайтов. Вы можете использовать любой из них в качестве своего OpenID. А точнее говоря, в качестве алиаса (синонима) к OpenID, предоставленного сторонним OpenID провайдером. Например, администратор этого сайта использует короткий и красивый OpenID web20.su вместо длинного и страшного web20su.livejournal.com.

Вопрос о том, как делегирование реализовано в самой технологии, выходит за рамки этой статьи. Скажем лишь, что для его применения достаточно вписать несколько тегов на странице вашего сайта между <head> и </head>. Если вы посмотрите исходный код этой страницы, то найдете в нем следующее:

<link rel="openid.server" href="http://www.livejournal.com/openid/server.bml" />
<link rel="openid.delegate" href="http://web20su.livejournal.com/" />

В первой строке указана ссылка на OpenID сервер, во второй — делегируемый идентификатор, то есть собственно OpenID. Получить адрес сервера можно, просмотрев исходный код страницы, находящейся по URL, который представляет собой ваш OpenID. Другими словами первая строчка просто скопирована из исходного кода страницы web20su.livejournal.com. Что вы теперь думаете о собственном сервере? :)

Халява! 9AMKTW58WURE — это подарочный сертификат на хостинг Jino. http://www.jino.ru/card – ссылка для активации. Пожалуйста, отпишитесь в комментариях, если вы воспользовались им. Или если выяснится, что кто-то не отписался… Новые раздачи в ближайший статьях!

Метки: , , ,

Похожие материалы:

  1. OpenID на практие
  2. Обзор магазина контента TextSale
  3. Альтернативы OpenID
  4. Gravatar – глобально распознаваемые аватары
  5. Обзор системы Disqus
RSS
Следите за обновлениями сайта по RSS, или в .
Есть вопросы? Задайте их на нашем форуме, без регистрации.
Оставить комментарий
8 Комментариев
  • Ответить

    Свой OpenID сервер – это не так сложно, если это PHPmyID для одного пользователя. Писал об этом в http://it.sander.su/personal_OpenID.php
    Зачем зависеть от стороннего сервера?

  • Ответить

    Сандер: по аналогии – зачем поднимать свой сервер, когда уже есть myid.net? Видимо это дело вкуса – не зависеть от сторонних сервисов или не делать лишнюю работу. Но учитывая, что мы говорим о Web 2.0, на мой взгляд последнее есть рассово верное решение.

  • Ответить

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

    P.S. очень неудобно, что тут нет подписки на комментарии на e-mail или rss

  • Ответить

    @Сандер,
    Вы не первый, кто жалуется. Уже исправили.

  • Ответить

    Отлично, лента работает!

  • Ответить

    Подарочный сертификат от http://www.jino.ru/card использовал. Спасибо.

  • BTemplate, пожалуйста :)

  • Ответить

    сейчас попробовал несколько сервисов OpenID
    только yandex хорощо отреагировал и отправил еше запрошенный ник и емаил
    livejournal.com отреагировал но ничего не отправил
    ramler вообще не работал
    вот так
    свой надежнее

Оставить комментарий

Вы можете войти, зарегистрироваться или оставить анонимный комментарий:

* Имя
* E-mail
Блог (если есть)
* Антиспам: 1 + 10 = ?
* - обязательные поля, e-mail не публикуется.