Как настроить поставщик OpenID (сервер) в Ubuntu?

Я хочу войти в Stack Overflow с помощью OpenID, но я думал, что создам свой собственный поставщик OpenID, просто потому, что это сложнее :) как вы это делаете в Ubuntu?

Edit: замена "сервера" на правильный термин OpenID provider (поставщик удостоверений также будет правильным в соответствии с Википедия).

5 ответов


Я лично использовал phpMyID только для StackOverflow. Это простой двухфайловый PHP скрипт для размещения где-то на поддомене. Конечно, это не так просто, как установка .deb, но поскольку OpenID полностью полагается на HTTP, я не уверен, что целесообразно устанавливать автономный сервер...


вы также можете настроить свой собственный сайт в качестве делегата для другого поставщика OpenID. Таким образом, вы можете использовать свой собственный URL, но не беспокоиться о безопасности и обслуживании, как уже упоминалось. Однако, это не очень сложно, поэтому он может не соответствовать вашим критериям :)

в качестве примера вы добавите этот фрагмент HTML на страницу по нужному URL OpenID, если вы использование ClaimID как поставщик OpenID:

<link rel="openid.server" href="http://openid.claimid.com/server" />
<link rel="openid.delegate" href="http://openid.claimid.com/USERNAME" />

Итак, когда OpenID клиенты получают доступ к вашему URL, они "перенаправляют" себя к фактическому провайдеру.


Я действительно сделал это (настроил свой собственный сервер с помощью phpMyID). Это очень легко и работает довольно хорошо. Одна вещь, которая раздражает меня до бесконечности, - это использование перенаправления HTML вместо HTTP. Я изменил это вручную, основываясь на некоторой информации, полученной в форум phpMyID.

однако я переключился на сайт myopenid в то же время. Прокатка собственного провайдера-это весело и игры, но это просто не безопасно! Есть два вопросы:

  • в общем, вы должны действовать на основе веры. phpMyID отлично, но он разработан в чье-то свободное время. В нем может быть много незамеченных дыр в безопасности – и в прошлом они были. Хотя это, конечно, относится ко всему программному обеспечению, связанному с безопасностью, я считаю, что проблема потенциально более серьезна с программным обеспечением, разработанным в свободное время, особенно потому, что код далек от совершенства по моему скромному мнению.
  • во-вторых, OpenID-это сильно восприимчивы к выскабливанию экрана и макет интерфейсов. Злоумышленнику слишком легко эмулировать интерфейс phpMyID для получения учетных данных для другого сайта. myOpenId предлагает два очень важных решения проблемы.
    • во-первых, это использование файла cookie, хранящегося на странице входа в систему. Если кто-то экран-scapes страницу входа myOpenId, это изображение будет отсутствовать, и подделка может быть легко идентифицирована.
    • Secondly, поддержки myOpenId войдите в систему, используя строго подписанные сертификаты, которые можно установить в веб-браузере.

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

в любом случае, прочитайте Сэма Руби учебник!


взгляните на Запустите свой собственный сервер идентификации страница. Community-ID выглядит наиболее перспективным до сих пор.


Я полностью понимаю, откуда вы пришли с этим вопросом. У меня уже был OpenID на www.myopenid.com но это немного странно полагаться на 3-ю сторону для такого важного входа (a.к. а мой постоянный "дом"в интернете).

к счастью, легко перейти к использованию собственного сервера в качестве сервера openID-на самом деле, это можно сделать только с двумя файлами с phpMyID.

  • скачать "phpMyID-0.9.молния" от http://siege.org/projects/phpMyID/
  • переместите его на свой сервер и распакуйте его, чтобы просмотреть файл README, который все объясняет.
  • zip имеет два файла:MyID.конфиг.на PHP, MyID.в PHP. Я создал каталог под названием <mydocumentroot>/OpenID и переименовано в MyID.конфиг.в PHP to .в PHP. Это означает, что мой URL OpenID будет очень крутым:http://<mywebsite>/OpenID
  • выберите имя пользователя и пароль, а затем создайте их хэш использование:echo -n '<myUserNam>:phpMyID:<myPassword>' | openssl md5
  • открыть .в PHP в текстовом редакторе и добавьте хэш имени пользователя и пароля в заполнитель. Сохранить его.
  • тест, перейдя в http://<mywebsite>/OpenID/
  • test ID работает с помощью:http://www.openidenabled.com/resources/openid-test/checkup/

Rerefence info:http://www.wynia.org/wordpress/2007/01/15/setting-up-an-openid-with-php/ , http://siege.org/projects/phpMyID/ , http://blog.stackoverflow.com/2009/01/using-your-own-url-as-your-openid/