pyplot python authentication pyramid

python - pyplot - Autenticación de usuario en Pyramid



subplot python title (1)

Estoy construyendo una aplicación web y necesito elegir entre Django y Pyramid. Decidí ir con Pyramid.

Entiendo que Pyramid viene con su propio marco de autenticación / autorización que se ve bien. Pero no he visto en ninguna parte de Pyramid donde se definan usuarios / grupos / permisos. En Django, estas cosas son gratis.

Estoy usando SQLAlchemy y me preguntaba si hay usuarios / grupos / permisos similares ya construidos que pueda importar. Prefiero no definir estos objetos / mapeos y hash / salazón de contraseñas yo mismo.

Las definiciones de Django de estas cosas son prácticamente todo lo que necesito.

¿Alguien puede señalar mi algo que puedo usar? ¿O necesito hacer mi propio?


Pyramid tiene un sistema de autenticación mucho más flexible. Y sí, si quieres algo simple como el concepto de usuario / grupo / permiso de Django, entonces flexible puede ser aterrador.

Pyramid no tiene un objeto "Usuario", ya que no hace suposiciones sobre cómo almacenar sus datos o qué ORM utiliza, por lo tanto, no hay nada para usted como contrib.auth. Necesitará hash / salt las contraseñas usted mismo usando una biblioteca como cryptacular o passlib, ambas encontradas en PYPI.

En cuanto a querer usuarios / grupos / permisos dentro del sistema de Pyramid, esto se puede lograr simplemente definiendo una RootFactory que tenga un __acl__ que __acl__ grupos a los permisos. Los permisos se asignan a las vistas, por lo tanto, son bastante estáticos por lo general. Si desea que los grupos (lo que Pyramid llama "principales") sean dinámicos, eso también se puede lograr.

Sugiero mirar el tutorial de wikipedia de Pyramid, así como la demostración de shootout .

También hay un par de paquetes de terceros para ayudar con la autorización dentro de Pyramid si planea usar SQLAlchemy. apex es una solución de pila más completa, y ziggurat_foundations es una capa de nivel inferior encima de SQLAlchemy para ayudarlo a configurar usuarios y grupos para su aplicación.

Su pregunta es de bastante alto nivel y la autorización es un "problema difícil", así que me detendré aquí y evitaré volver a regurgitar los tutoriales y recursos que ya existen desde los tutoriales de Pyramid a varios ejemplos de terceros. Si tiene preguntas específicas, siéntase libre de preguntarlas en otra pregunta.