Хабр Курсы для всех
РЕКЛАМА
Большая витрина: от крупнейших школ до частных авторов. Сравнивайте по цене, длительности, формату и выбирайте самый подходящий курс!
signed_return_url(), и обработка ветки $type eq 'setup' — эти два куска писались методом интутивного тыка, и я совершенно не уверен что они корректно покрывают все варианты использования.handle_page() вернёт 'redirect', а не 'setup' — а я этот редирект переписываю через signed_return_url(), что теоретически может привести к подтверждению авторизации вместо провала, т.е. к дыре в безопасности. А может никакой дыры и нет. Но без нормальной документации и тестов это узнать сложно.
Персональный OpenID сервер на Perl