Parece que el modelo de seguridad se adapta a proyectos muy pequeños, pero que probablemente no sea factible escribir todas las contraseñas hash de posibles usuarios registrados en security.py. ¿Conoce algún ejemplo de ampliación de la autenticación de Pyramid, o hay algún beneficio al llamar a través del esquema de seguridad de Pyramid a mi propia base de datos de información de seguridad?¿Puede la autenticación/autorización incorporada de Pyramid implementar esquemas de seguridad complejos?
Respuesta
No tiene idea de cuáles son sus necesidades o qué quiere decir con "aumentar la seguridad", pero la política de autenticación de pirámides es muy flexible. Sin embargo, debe comprender que no mantiene usuarios y contraseñas sino que simplemente proporciona un mecanismo para obtener un identificador de usuario a partir de la solicitud entrante. Por ejemplo, el AuthTktAuthenticationPolicy realiza un seguimiento de la identificación de usuario por cookie que ha establecido utilizando el método remember.
Lo que la información significativa que deriva de esa identificación de usuario es totalmente suya y es específica de la aplicación.
Así que realmente la pregunta que puede querer hacer es si su aplicación puede "aumentar la seguridad".
No puedo mostrarle el código porque es propiedad pero necesito admitir openid, http auth y la tienda de usuario respaldada por db típica en la misma aplicación, con la complicación adicional añadida de que los usuarios están almacenados en diferentes fragmentos de base de datos y el fragmento no puede ser determinado inmediatamente. Se necesita muy poco código para apoyar esto.
No creo que el tamaño del proyecto esté relacionado con el modelo de seguridad. O desea un modelo de seguridad simple o complejo. Ambos se pueden aplicar a proyectos de cualquier tamaño. Uno de los puntos fuertes de Pyramid es su extensibilidad.
¿Por qué almacenar contraseñas hash en security.py
? (Cmiiw aquí, probablemente lo malinterprete) Si lees esto en el código de alguien, probablemente sea solo un ejemplo. En aplicaciones reales, las guarda en un sistema de almacenamiento/persistencia de su elección.
Una vez más, no entiendo lo que quiere decir con "escalar la autenticación". Mi conjetura es que desea algunos ejemplos de trabajo:
- tutorial from the docs
- shootout application: pequeña y buen ejemplo, con formas
- pyramid auth demo: Complejo/granular/a nivel de fila permiso
- pyramid apex: 3rd auth partido (Google , twitter, etc.) con velruse, formularios, etc.
- pyramid registration: biblioteca sin terminar; Puede robar algunas ideas
Terminé construyendo algo para mí que hace la autenticación un poco más fácil si estás usando MongoDB.
https://github.com/mosesn/mongauth
No está integrado en la pirámide, pero en ganchos con bastante facilidad. Todo es bastante transparente.
¡Guau! Un buen guion lo conseguiste ... Simple, pero funcional. – Augiwan
- 1. ¿Esquemas alternativos para implementar vptr?
- 2. Algoritmos poderosos demasiado complejos para implementar
- 3. ¿Se puede ignorar con seguridad la diferencia entre una macro y una incorporada?
- 4. Cómo implementar la aplicación iTunes incorporada Función "Compartir archivos"
- 5. ¿Cómo expongo la seguridad incorporada y la administración de usuarios a una aplicación MVC?
- 6. ¿Puedo poner 3 esquemas de autenticación diferentes en la misma configuración de seguridad de primavera?
- 7. Pyramid: ¿Equivalente de MVC en PHP Frameworks en Pyramid/Python?
- 8. escribiendo esquemas json más complejos que tienen dependencias sobre otras claves
- 9. ¿Cómo se puede implementar FileTimeToSystemTime?
- 10. Integración de Turbomail con Pyramid
- 11. Pyramid logging
- 12. Esquemas de asignación de Malloc
- 13. Autenticación de usuario en Pyramid
- 14. Manejo de formularios en Pyramid
- 15. subdominios de encaminamiento en Pyramid
- 16. otra vista en Pyramid
- 17. ¿Se puede usar la biblioteca Parsec de Can Haskell para implementar un analizador de descenso recursivo con copia de seguridad?
- 18. Refactorización de esquemas XSD
- 19. Actualización de aplicaciones web Pyramid/SQLAlchemy
- 20. Lista incorporada de subclase
- 21. ¿Versión incorporada sin datos de la propiedad?
- 22. cómo simular la animación de cambio de aplicación incorporada?
- 23. Software Development Costs Pyramid
- 24. Pyramid ACL without traversal
- 25. Cómo utilizar DoG Pyramid en SIFT
- 26. Pyramid project structure
- 27. Obteniendo la dirección IP de la solicitud con Pyramid
- 28. pyramid: obtener la URL absoluta de la aplicación
- 29. ¿Puede la compresión ZIP incorporada de Windows tener secuencias de comandos?
- 30. Pyramid equivalente al comando syncdb de Django?
¿quién defiende el almacenamiento de contraseñas en security.py? –
https://docs.pylonsproject.org/projects/pyramid/1.1/tutorials/wiki2/authorization.html tiene una demostración muy simple con un {key, raw_password} dict en security.py – nnythm
Ah bien, veo tu punto. Pero no es demasiado exagerado para alguien familiarizado con Python imaginar al buscador de grupos buscando una base de datos o algo más. –