Как вы разрабатываете против OpenID локально - PullRequest
37 голосов
/ 05 октября 2008

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

Существует ли такой сервер разработки OpenID? Это лучший способ?

Ответы [ 7 ]

15 голосов
/ 06 октября 2008

Библиотеки по OpenID Enabled поставляются с примерами, достаточными для запуска локального поставщика тестов. Посмотрите в каталоге examples / djopenid / исходного кода python-openid. Запуск, который даст вам экземпляр этого провайдера тестов .

9 голосов
/ 05 октября 2008

У меня нет проблем с myopenid.com . Я думал, что будет проблема тестирования на моей локальной машине, но это просто сработало. (Я использую ASP.NET с библиотекой DotNetOpenId).

'realm' и возвращаемый URL должны содержать номер порта, например 'http://localhost:93359'.

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

3 голосов
/ 05 октября 2008

Вы, вероятно, могли бы использовать библиотеку django OpenID, чтобы написать провайдера для проверки. Имейте тот, который всегда аутентифицирует, и тот, который всегда терпит неудачу.

3 голосов
/ 05 октября 2008

Я использую phpMyID для аутентификации в StackOverflow прямо сейчас. Создает стандартную область HTTP-аутентификации и работает отлично. Это должно быть именно то, что вам нужно.

3 голосов
/ 05 октября 2008

Я тоже смотрю на это. Я тоже работаю над проектом Django, который может использовать Open Id. Для справок, проверьте:

Надеюсь, кто-то здесь решил эту проблему.

1 голос
/ 05 октября 2008

У вас не должно быть проблем с развитием на собственной машине. Какую ошибку вы получаете?

Поставщик OpenID попросит вас предоставить вашему сайту (в данном случае http://localhost:8000 или подобному) доступ к вашей личности. Если вы нажмете ОК, то он перенаправит вам этот URL. У меня никогда не было проблем с livejournal , и я ожидаю, что myopenid.com тоже будет работать.

Если у вас проблемы с локальным развитием, я полагаю, что проблема, с которой вы сталкиваетесь, не связана с тем, что url является localhost, а с чем-то другим. Без сообщения об ошибке или описания проблемы невозможно сказать больше.

Редактировать : Оказывается, Yahoo поступает иначе с другими поставщиками OpenID, с которыми я сталкивался, и запрещает перенаправления на IP-адреса, сайты без правильного имени в доменном имени и те, которые работают на порты, отличные от 80 или 443. См. здесь для сообщения от разработчика Yahoo на эту тему. Этот пост предлагает обходной путь, но я бы предположил, что для разработки myopenid.com будет гораздо проще, чем работать с Yahoo или работать с собственным провайдером.

1 голос
/ 05 октября 2008

Почему бы не запустить поставщика OpenID с локального компьютера?

Если вы являетесь разработчиком .Net, есть библиотека поставщика OpenID для .Net по адресу Google Code . При этом используется стандартный механизм провайдера профилей .Net и он оборачивается слоем OpenID. Мы используем его для добавления OpenID в наш пользовательский механизм аутентификации.

Если вы работаете на другом языке / платформе, существует несколько вариантов реализации OpenID, доступных на сайте сообщества OpenID здесь .

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