Tarea 5: Definición de usuarios para el control de accesos.
Zope nos permite gestionar la seguridad de nuestra web a través
de la definición de usuarios, roles y políticas de seguridad.
Si no se está familiarizado con estos conceptos antes de comenzar
con esta parte del ejercicio se pueden obtener más información
en
Seguridad
en Zope .
Los controles de acceso que vamos a definir en el sitio web de ZSmart
son los siguientes:
-
Gestor del web ZSmart, que compartirá con nosotros
esta tarea de forma que seremos los dos únicos usuarios que podrán
modificar y crear nuevos objetos Zope dentro de la carpeta ZSmart.
Este usuario será webmaster_zsmart.
Este usuario podrá acceder a la URL de gestión http://karajan.it.uc3m.es:8081/emaster/master00/ZSmart/manage
Los contenidos que se incluyen en la página de ZSmart no son tarea
nuestra, pero si debemos garantizar que sólo aquellas personas encargadas
puedan realizarlo, para ello definiremos un usuario de gestión para
cada una de las partes en las que se divide hasta este momento el web,
que son Productos, Ventas, Noticias e Interno.
Además la parte interna del web sólo la pueden visualizar
los miembros de la empresa ZSmart, para ello crearemos un rol llamado
interno
y un usuario genérico
empleado,
que será el único que podrá visualizar
http://karajan.it.uc3m.es:8081/emaster/master00/ZSmart/Interno
Veremos paso a paso la creación de los distintos usuarios:
Creación del usuario webmaster_zsmart.
-
Nos situamos en la carpeta ZSmart
y seleccionamos la carpeta de usuarios acl_users,
aparecerá la siguiente ventana, en la que se ve que no existe ningún
usuario actualmente definido:
Figura 1. Carpeta de usuarios de ZSmart
-
Pulsamos el botón "Add",
aparecerá una pantalla de creación de usuarios.
Figura 2. Creación del usuario webmaster_zsmart
-
En el campo Name ponemos el nombre
del usuario, en este caso webmaster_zsmart.
-
En el campo Password y Confirm
ponemos la palabra de paso asociada a ese usuario, por ejemplo cambiame.
-
El campo Domains lo dejamos en
blanco.
-
En el campo roles indicamos
Manager, porque este usuario va a tener asociadas tareas de gestión.
-
Pulsamos Add para confirmar la
creación del nuevo usuario.
Creación de usuarios webmaster_productos,
webmaster_ventas,
webmaster_noticias
y webmaster_interno.
Los pasos a realizar son los mismos que en el caso anterior, pero deberemos
crear el usuario en la carpeta de usuarios adecuada, se detallan los pasos
en el caso de la creación del usuario
webmaster_productos.
-
Nos situamos en la carpeta Productos
dentro de la carpeta ZSmart y seleccionamos
la carpeta de usuarios acl_users,
aparecerá una ventana como la de la figura
1 en la que se ve que no existe ningún usuario definido.
Pulsamos el botón Add.
Figura 3. Creación del usuario webmaster_productos.
-
En el campo Name ponemos el nombre
del usuario, en este caso webmaster_productos.
-
En el campo Password y Confirm
ponemos la palabra de paso asociada a ese usuario, por ejemplo cambiame.
-
El campo Domains lo dejamos en
blanco.
-
En roles indicamos
Manager porque este usuario va a tener asociadas tareas de gestión.
-
Pulsamos Add para confirmar la
creación del nuevo usuario.
Creación de rol y usuario para el acceso al web interno
En este caso deberemos crear primero un rol, para ello seguiremos los pasos
siguientes:
-
Nos situamos en la carpeta "root"
y vamos al tab de Security
de esta carpeta, creamos un rol llamado interno.
Figura 4. Creación del rol interno
-
En el campo "User defined roles"
ponemos interno.
-
Pulsamos el botón "Add Role".
Una vez creado este rol debemos establecer la política de seguridad
asociada al mismo, que afectará a la carpeta Interno que es la que
queremos proteger. Nuestro objetivo es que sólo los usuarios
que pertenezcan a este rol puedan visualizar los contenidos de la carpeta
Interno. Los pasos a realizar son:
-
Nos situamos en la carpeta Interno,
dentro de la carpeta ZSmart, y
vamos al tab de seguridad (Security).
-
Activamos el permiso View para
el rol interno y para el manager global
y además
debemos desactivar la adquisición para este permiso (porque globalmente
los usuarios pertenecientes al rol Anonymous
tienen el permiso de visualización activado y por lo tanto, cualquier
usuario podría visualizar estas páginas porque adquiere
este permiso por herencia).
Figura 5. Permisos asociados al rol interno
-
Pulsamos el botón Change y
confirmamos los cambios en la pantalla siguiente pulsando el botón
OK.
El siguiente paso es crear un usuario en la carpeta
Interno
que tenga el rol
interno, para
que podamos acceder mediante este usuario al web interno que hemos creado.
Para ello creamos un usuario
empleado
en
la carpeta
ZSmart/Interno asignado
al rol
interno.
Figura 6. Creación del usuario empleado
asociado al rol interno
Para comprobar que Zope gestiona correctamente la seguridad, debemos
volver a arrancar el navegador (porque guarda información de usuario
y en la actualidad somos gestores a nivel de "root" y por lo tanto podemos
visualizar todos los contenidos) y conectarnos a la URL http://karajan.it.uc3m.es:8081/emaster/master00/ZSmart/Interno
, nos solicitará un usuario y una palabra de paso al proporcionarle
empleado/cambiame
veremos
su contenido, por el contrario si nos conectamos a la URL
http://karajan.it.uc3m.es:8081/emaster/master00/ZSmart/Ventas