openID в wsgi с Python 3 - PullRequest
       15

openID в wsgi с Python 3

10 голосов
/ 14 апреля 2011

Я никогда раньше не занимался аутентификацией, но хотел бы иметь возможность отслеживать и аутентифицировать пользователей через openID. Я видел пару модулей, которые допускают аутентификацию openID с WSGI, но все они старые и никто не упоминает python3, поэтому я предполагаю, что они не работают.

Мне бы хотелось несколько советов о том, как обрабатывать / аутентифицировать openID в WSGI и python3. Будет приветствоваться простая реализация.

1 Ответ

3 голосов
/ 30 сентября 2011

Два ответа на этот ответ сразу:

  • Я хорошо разбираюсь в ваших рамках, urllib и его друзьях, реализация этого все равно займет немного времени.Это не тривиально.

  • Код openid2rp выглядит не совсем так, хм, готов.

Тем не менее.Последняя версия openid2rp может быть переведена с 2to3 для работы в Python 3. Вам нужно будет исправить несколько небольших вещей.

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

Мне удалось перевести это в cherrypy таким образом. Хотя это не то, что вы ищете, это может быть полезным руководством: http://paste.ubuntu.com/699338/

В качестве примера, этот вид кода по-прежнему сохраняется после запуска 2to3:

- mac_key = base64.decodestring(session['mac_key'])
+ mac_key = base64.b64decode(session['mac_key'].encode())

Вы увидите эти вещи при написании действительного кода входа.

Это мой __init__.py. Обратите внимание, что методы, которые я еще не использую, все еще содержат ошибки! http://paste.ubuntu.com/699354/

...