Permisos para el sitio de administración
Django incluye un sitio de administración integrado que se puede usar para administrar los datos de la aplicación y la seguridad. Este sitio forma parte de la instalación predeterminada. Como veremos, solo hacen falta unas líneas de código para activarlo. Django también incluye una implementación completa de autenticación y autorización, que se puede usar para controlar el acceso al sitio de administración.
Django y la seguridad
Django está diseñado para simplificar la creación de aplicaciones web controladas por datos, ya que proporciona la funcionalidad normal que requieren estos tipos de sitios. Django proporciona un mecanismo de autenticación y autorización, aunque el sistema incluido se puede expandir y modificar libremente. Puede incorporar autenticadores de terceros, autenticación multifactor o cualquier otro requisito de su organización. En este módulo veremos la implementación predeterminada.
Exploración de los tipos de usuario
De forma predeterminada, Django cuenta con tres tipos principales de usuarios: usuarios, personal y superusuarios. Puede crear sus propios tipos mediante la creación de grupos o la configuración de permisos únicos.
Niveles de acceso
Access | Usuario | Personal | Superusuario |
---|---|---|---|
Sitio de administración | No | Sí | Sí |
Administración de datos | No | No | Sí |
Administrar usuarios | No | No | Sí |
De forma predeterminada, el personal tiene acceso al sitio de administración, pero no puede modificar los datos. Puede establecer permisos individuales o crear grupos según sea necesario para proporcionar los niveles de acceso adecuados.
Creación de usuarios
Para crear usuarios en Django, primero debe crear un superusuario. Use el comando createsuperuser
de manage.py para crear un superusuario. Después de crear un superusuario, puede acceder al sitio de administración para crear los demás usuarios.
El sitio de administración
La creación de una aplicación controlada por datos conlleva, por definición, trabajar con datos. Para permitir a usuarios profesionales internos acceso para modificar los datos según lo consideren oportuno, a menudo se requiere código entre la seguridad y la interfaz. Django proporciona un sitio de administración que controla este proceso automáticamente.
A través del sitio de administración, puede determinar qué usuarios tienen acceso a qué datos. Los usuarios pueden emplear el sitio de administración para agregar, actualizar y eliminar elementos. No necesitan acceder a la base de datos directamente ni omitir ninguna de las reglas de validación que haya implementado. El modelo de seguridad y la interfaz ya están creados como parte del marco. Lo único que debe hacer es activar los modelos para que aparezcan en el sitio, lo que tan solo requiere un par de líneas de código.