Может ли встроенная аутентификация / авторизация в Pyramid реализовывать сложные схемы безопасности? - PullRequest
5 голосов
/ 18 августа 2011

Кажется, что модель безопасности подходит для очень маленьких проектов, но, вероятно, невозможно записать хэшированные пароли всех возможных зарегистрированных пользователей в security.py. Знаете ли вы какие-либо примеры расширения проверки подлинности Pyramid или есть какие-либо преимущества для вызова через схему безопасности Pyramid в мою собственную базу данных информации о безопасности?

Ответы [ 3 ]

8 голосов
/ 18 августа 2011

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

Зачем вам хранить хешированные пароли в security.py? (Cmiiw здесь, я, вероятно, неправильно понял) Если вы читаете это на чей-то код, это, вероятно, просто пример. В реальных приложениях вы сохраняете их в выбранной вами системе хранения / хранения.

Опять же, я не понимаю, что вы имеете в виду под "расширением аутентификации". Я думаю, вы хотите несколько рабочих примеров:

4 голосов
/ 18 августа 2011

Понятия не имею, что вам нужно или что вы подразумеваете под «повышением безопасности», но политика аутентификации пирамид очень гибкая. Вы должны понимать, что он не поддерживает пользователей и пароли, а лишь предоставляет механизм для получения идентификатора пользователя из входящего запроса. Например, AuthTktAuthenticationPolicy отслеживает идентификатор пользователя по cookie, который вы устанавливаете с помощью метода запоминания.

Какая значимая информация, которую вы получаете из этого идентификатора пользователя, полностью зависит от вас и зависит от приложения.

Так что на самом деле вопрос, который вы, возможно, захотите задать, заключается в том, может ли ваше приложение «повысить безопасность».

Я не могу показать вам код, потому что он проприетарный, но мне нужно было поддерживать openid, http auth и типичное хранилище пользователей с резервной копией в одном и том же приложении с дополнительным усложнением, заключающимся в том, что пользователи хранятся в разных сегментах базы данных осколок не может быть определен немедленно. Для этого требуется очень мало кода.

3 голосов
/ 12 июля 2012

Я закончил тем, что создал для себя что-то, что делает аутентификацию немного проще, если вы используете MongoDB.

https://github.com/mosesn/mongauth

Она не встроена в пирамиду, но подключаетсядостаточно легко.Все довольно прозрачно.

...