Kitabı oku: «Administración y auditoría de los servicios web. IFCT0509», sayfa 3
5. Técnicas de gestión de permisos
En los servidores web existen estructuras que permiten organizar a los usuarios de forma que cada uno de ellos pueda formar parte de un grupo determinado por ciertas características y, dentro de ese grupo, podrá desarrollar unas funciones en concreto.
La función del proceso de administración y gestión de permisos en servidores web es dar de alta a usuarios con sus respectivos permisos. Para ello, se deben crear diferentes filtros de administración para permitir o restringir el acceso de los usuarios a ciertas funcionalidades, basándose en la pertenencia a esos grupos.
El administrador de un servidor web posee la capacidad de controlar los accesos de los usuarios, así como los recursos a los cuales estos pueden acceder. Existen tres modos de acceso para cada uno de los tipos de usuarios:
1 Permisos de lectura. Con él los usuarios solo tienen permitido ver el contenido del fichero.
2 Permisos de escritura. Con este tipo de permiso, el usuario puede crear, modificar o borrar ficheros.
3 Permisos de ejecución. Permite ejecutar el fichero como un comando.

Importante
Los derechos de acceso deben restringirse para proteger los datos frente a posibles hechos accidentales que puedan sobrescribir o borrar parte de información.
5.1. Pérfiles
Un perfil es una estructura que permite definir el tipo de usuario y los permisos a los que tendrá acceso dicho usuario en el servidor. En la siguiente tabla, se puede ver un ejemplo de diferentes perfiles de grupo para la página web de una cátedra. En la tabla Categorías de usuario correspondería a los perfiles definidos por el administrador para los diferentes grupos. Para el caso, se tienen los siguientes perfiles: alumnos, profesores, adscritos, directivos, coordinadores, invitados.
Tipo de Grupo | Categorías de usuario | |||||
Cátedra | Alumnos | Profesores | Adscriptos | Directivos | Coordinadores | Invitados |
Cursos / Postgrado A distancia / SCORM | Alumnos | Profesores | Adscriptos | Directivos | Coordinadores | Invitados |
Grupo de Trabajo | Usuarios | Instructores | Invitados | Gerencia | Coordinadores | Invisibles |
Investigación | Investigadores | Project Leaders | Invitados | Directores | Coordinadores | Invisibles |
Jornadas | Participantes | Disertantes | Organizaciones | Autoridades | Coordinadores | Invisibles |
Tabla de perfiles para grupos

Importante
El administrador puede decidir los nombres más adecuados para cada perfil, en función de la actividad del grupo o del usuario.
El siguiente ejemplo muestra cómo crear perfiles o niveles de acceso en el gestor de contenidos Joomla. Los permisos de acceso en Joomla están organizados de forma jerárquica, como muestra la siguiente imagen:

Tabla de perfiles para grupos
Los perfiles en Joomla permiten configurar el tipo de usuario que accederá a los diferentes contenidos del sitio web como los artículos, módulos, secciones o menús y que solo serán accesibles a usuarios con un determinado perfil. En Joomla, estos perfiles tienen tres niveles:
1 Público: todo el mundo tiene acceso
2 Registrado: solo los usuarios registrados tienen acceso
3 Especial: solo los usuarios con estatus de autor o superior tienen acceso.
5.2. Grupos
Los grupos son permisos de usuarios del mismo nivel. Un usuario de este tipo puede acceder al archivo o carpeta, pero no puede decidir quién puede acceder a él.
Desde los grupos se puede determinar el estado de las acciones, permitiéndose así diferenciar tipos de usuario y sus privilegios de interacción con el sitio web.
El siguiente ejemplo muestra cómo crear un grupo en el gestor de contenidos Joomla. Todos los usuarios forman parte de algún grupo, incluso los que no están registrados, que pertenecerán por defecto al grupo público. La gestión de grupos en Joomla se realiza desde: Usuarios -> Grupos.
Aparecerá una pantalla que muestra los grupos existentes y el número de usuarios por grupo.

Grupos de Joomla
Para crear un grupo nuevo, solo habrá que hacer clic en Nuevo, introducir el nombre del nuevo grupo y el nombre de su grupo padre, que por defecto es el grupo público.

Creación de un nuevo grupo en Joomla
Como desde los grupos se puede determinar el estado de las acciones, así como los privilegios de los que disponen los usuarios, cada vez que se cree un nuevo perfil o nivel de acceso, también se tendrán que seleccionar los grupos que lo formarán.

Nuevo nivel de acceso
5.3. Roles
Un rol es el papel que desarrolla un usuario dentro de la plataforma. Se puede entender el rol como un grupo de privilegios necesarios para el usuario, que le permiten realizar determinadas operaciones en el sistema. Existen distintos tipos de roles: visitante, miembro, moderador y administrador y responsable:

Importante
Las decisiones sobre que herramientas o no pueden utilizar los usuarios es exclusiva de los usuarios con rol de administrador.
1 Rol de visitante. Un usuario con rol de visitante solo podrá acceder a los recursos públicos del sitio o página web, ya que no es un miembro del grupo. Lo habitual es que solo dispongan de permisos de solo lectura, aunque también es posible que tengan algún permiso de escritura pública que les permita la participación en alguna actividad.
2 Rol de miembro. Si un usuario quiere pertenecer al grupo, lo solicitará al administrador y este, una vez se ha aprobado su admisión, le asignará el rol de miembro. Este rol amplía los permisos de los que puede disfrutar el usuario. Podrá editar información de su perfil, asignar permisos a otros usuarios para que puedan ver su información y, dependiendo del grado de participación que se le tenga asignado, podrá participar en todas las herramientas de grupo. Por ejemplo: puede crear nuevas entradas en un blog o, por el contrario, solo puede realizar comentarios.
3 Rol de moderador de grupo. Este rol amplía las funciones de rol de miembro, pues el usuario adquiere un cierto control sobre los contenidos que se publican. Puede eliminar o modificar aportaciones del resto de usuarios en las diferentes herramientas compartidas de las que dispone.
4 Rol de administrador de grupo. El administrador del grupo es el encargado del mantenimiento del mismo, además ser el responsable de asignar todos los demás roles. También decide las características de las herramientas y es responsable de dar de alta en el grupo a los diferentes usuarios.
5 Rol de responsable del grupo. Es el encargado de comunicar y resolver incidencias, además de atender las consultas y las sugerencias de los usuarios y disfruta de los mismos privilegios que el administrador del grupo.

Recuerde
Los roles permiten la participación de un usuario en espacio compartido y le garantizan diferentes derechos de acceso a los objetos que se encuentran en él.

Aplicación práctica
Considere un sitio web perteneciente a un departamento de la universidad en el que, entre otras actividades, se imparten cursos de postgrado online. Para esta actividad se ha creado un grupo, con el nombre “cursos postgrado”, en el que se pueden encontrar los siguientes perfiles: alumnos, profesores, ayudantes, coordinadores e invitados. Asigne a cada uno de estos perfiles su correspondiente rol.
SOLUCIÓN
1 Los alumnos solo podrán disfrutar del rol de miembro del grupo, con el que podrán acceder a los contenidos de la plataforma que correspondan a su espacio y participar en algunas herramientas del grupo como foros.
2 Los profesores tendrán asignado el rol de administrador de grupo, ya que este les permite dar de alta a los alumnos asistentes a su curso y decidir qué herramientas utilizarán en el curso y las características de las mismas.
3 Los ayudantes tendrán asignado el rol de moderador de grupo, ya que, como plataforma e-learning para el aprendizaje, tendrán que interactuar con el alumno en espacios compartidos para temas de consultas, etc. y para ello deberán tener un cierto control sobre estas herramientas, para que les permita incluir, eliminar o modificar contenidos.
4 Los coordinadores disfrutarán del rol de responsable de grupo. Para ejercer su función, un coordinador necesita poder, al igual que los profesores, asignar roles, pero además serán los encargados de resolver incidencias.
5 Evidentemente, los invitados disfrutarán del rol de invitados.
6. Procedimientos de optimización de rendimiento del servidor web
La optimización del rendimiento de un servidor web no solo reduce el consumo de ancho de banda del servidor web de manera que cualquier buscador tiene que descargar menos Kb para buscar las páginas que solicita el usuario, sino que también mejora notablemente la experiencia de usuario.
6.1. Técnicas de optimización
Para que un servidor pueda atender con fluidez el número de peticiones que recibe, no tenga problemas de caídas de servicio y tenga un crecimiento positivo, debe aplicar una serie de técnicas claves:
1 Balanceo de carga. Cuando un usuario realiza una petición, es gestionada por un servidor proxy que se encarga de distribuir entre otros servidores la carga de peticiones que recibe la web. Definición: Servidor proxy: es un equipo intermediario entre el sistema del usuario e Internet.
2 Tolerancia a fallos. Un sistema tolerante a fallos es el que sigue funcionando a pesar de los fallos que puedan ocurrir en el servidor. La tolerancia a fallos se construye sobre la replicación a nivel de máquina y de datos, y consiste en tener una o varias copias del servidor para que, si este falla, una de las copias se encargue de realizar sus funciones. Nota: la técnica de balance de carga ayuda a crear sistemas tolerantes a fallos.
3 Caché en memoria. Es una memoria en la que se almacenan las páginas más visitadas. Esta técnica reduce el ancho de banda consumido, aligera la carga del servidor y, muy importante, reduce el tiempo de descarga. Cuando un usuario realiza una petición, en primer lugar se comprueba si la página está en la memoria cache. Si está, se envía al cliente; en caso contrario, se busca en el servidor, se almacena en la memoria caché para futuras peticiones y se envía al cliente.
4 Replicación de datos: consiste en realizar copias de los datos en una red de almacenamiento. La replicación de datos es la base de la tolerancia a fallos, aumenta la disponibilidad, ya que a mayor número de copias, mayor número de peticiones atendidas, y es fundamental para la recuperación ante desastres.

Nota
La replicación de datos se puede realizar de dos formas: síncrona, que consiste almacenar los datos en el sitio primario y en el secundario al mismo tiempo; y asíncrona, que introduce un retardo antes de que los datos se graben en el sitio secundario.
6.2. Parámetros de calidad de servicio y usabilidad
Según la Organización Internacional para la Estandarización (ISO), la usabilidad es la eficacia, eficiencia y satisfacción con que un producto permite alcanzar objetivos específicos a usuarios específicos en un contexto de uso específico y define la calidad como el grado en el que un conjunto de características inherentes cumplen con los requisitos.

Nota
La palabra usabilidad deriva del inglés usability, cuya traducción más acertada es “facilidad y simplicidad de uso de un artículo u objeto”.
Según Peter Morville, el grado de usabilidad depende de otras variables que permiten medir la calidad de un sitio web desde diferentes perspectivas, de forma que la usabilidad sería solo una más. Estas variables serían las siguientes:
1 Útil. Los sitios web creados deben ser útiles.
2 Usable. Corresponde a la facilidad de uso, es un aspecto necesario pero no suficiente.
3 Deseable. Un sitio web, además de cubrir una necesidad, debe llamar la atención de los usuarios, utilizando para ello valores de diseño.
4 Encontrable: Los sitios web deben ser navegables y permitir que los usuarios puedan encontrar lo que buscan.
5 Accesible: los sitios web deben ser accesibles a las personas con discapacidades.
6 Creíble: la confianza del usuario es uno de los factores más importantes a tener en cuenta, por lo tanto se deben revisar todos los aspectos relacionados con la credibilidad del sitio web.
7 Valioso: determinar qué aspectos son los que hacen que los usuarios valoren un sitio web.


Nota
Usabilidad y accesibilidad son dos conceptos que siempre van unidos.

Recuerde
La usabilidad es un atributo que indica la medida en la que el usuario encuentra lo que busca, entiende lo que encuentra y si el esfuerzo y tiempo dedicados son los adecuados para ello.
Usabilidad del servicio
Hay aspectos de configuración y funcionamiento de un servidor web que afectan directamente a la experiencia de usuario. Pueden parecer pequeños detalles sin importancia, pero pueden llegar a hacer que un usuario no llegue a entrar en una determinada página.
Para que una web cumpla con los parámetros de usabilidad web, deben configurarse los siguientes parámetros en el servidor:
1 Se debe configurar el servidor para que nos devuelva la página solicitada, independientemente de que se teclee:www.nombre.extensionnombre.extensionNota: también hay que tener en cuenta al configurar el servidor los posibles errores que los usuarios pueden cometer al escribir ‘www’, para que este pueda igualmente entregar la página.
2 El servidor debe configurarse de manera que pueda resolver los casos en los que los usuarios cometan errores al escribir la URL o los casos en los que utilizan variantes de direcciones pertenecientes a marcas conocidas para redireccionar los usuarios a otros tipos de negocios. Con ello, se evita que el usuario abandone frustrado la página tras varios intentos fallidos.
3 Para la extensión de dominio, es aconsejable utilizar siempre la propia del país de origen del sitio o página web y si el ámbito de esta es internacional, utilizar la extensión ‘.com’.
4 Un servidor puede dar errores. Para cada uno de estos posibles errores debe existir una sencilla explicación que el usuario pueda comprender. Para ello, debe existir una única página Web Server Error, que englobe todos los posibles errores del servidor.
Parámetros de calidad
Los parámetros de calidad influyen y mucho en la usabilidad del servicio y en la experiencia del usuario.

Nota
La optimización de una aplicación web puede realizarse a dos niveles: Back-end, o lado del servidor; y Front-end, o lado del cliente.
El usuario se desenvuelve en una web dinámica, por lo que no solo se deben tener en cuenta los parámetros que afecten al rendimiento del servidor, a la aplicación o a la base de datos, sino también los parámetros que puedan afectar al rendimiento web del lado cliente, como puede ser el tiempo de carga de la página, el posicionamiento de esta por parte de los buscadores en función de su velocidad o la calidad de visualización del contenido, además de todas las facetas que implican la interacción del usuario.
Los parámetros nos ayudan a medir la calidad del servicio que presta un servidor y esto es importante pues la calidad del servicio del servidor afecta a la experiencia del usuario. Si alguno de los parámetros de calidad del servidor no es óptimo, como consecuencia el usuario puede sufrir retardos en la entrega de la página que ha solicitado, pérdida de información o incluso caída total del servicio.
Los parámetros que reflejan el funcionamiento de un servidor al prestar algún servicio se denominan métricas.
Las métricas en conjunto definen el comportamiento de un servidor y la calidad del servicio de este. Los parámetros de calidad para un servidor son los siguientes:
1 Latencia: este parámetro es muy importante, ya que refleja la fluidez con la que el servidor está funcionando, es decir, indica su grado de retardo. Si su valor es alto, indica que el servicio del servidor es limitado.
2 Número de conexiones: si un servidor rebasa el número máximo de conexiones que puede soportar, los usuarios que posteriormente soliciten el servicio serán rechazados, por lo tanto es muy importante saber cuántas peticiones puede atender el servidor y si el número de conexiones está dentro de los parámetros óptimos de uso.
3 Paquetes entrantes y salientes: si el número de paquetes entrantes y salientes es superior al que puede soportar el servidor, este no podrá atender en tiempo todas las peticiones y, como consecuencia, el servicio se verá afectado.
4 Paquetes perdidos: cuando los paquetes viajan por la red, el tráfico de esta puede ocasionar retrasos o incluso hacer que alguno de ellos se llegue a perder. Si esto ocurre, la información llega incompleta y es necesario una retransmisión del paquete perdido.
5 Tasa de conexión: la velocidad de transferencia de datos entre cliente y servidor es un factor muy importante para determinar la calidad del servicio.
6 Uso de CPU: es una métrica a tener muy en cuenta. Si la CPU no tiene capacidad suficiente para atender la demanda de servicios sin que el tiempo de espera sea apreciable, se producirán retardos en el tiempo de respuesta.
7 Uso de RAM: cuando los procesos de ejecución en el servidor consumen mucha memoria, el procesamiento será más lento, ya que no será posible encontrar memoria libre con facilidad, llevando más tiempo guardar los resultados en ella, lo que naturalmente afecta al tiempo de respuesta.

Aplicación práctica
Considere un servidor web que da servicio a un portal de servicios médicos (consultas, petición de cita, etc.) y, como administrador del sistema, comienza a recibir quejas de algunos usuarios comentando que intentan acceder a la web pero el navegador le responde con el error:

¿Qué parámetros de calidad pueden estar fallando para que el servicio del servidor caiga?
SOLUCIÓN
Los parámetros responsables pueden ser dos:
1 Latencia. Indica la disponibilidad del servidor desde cualquier punto de la red. Si la latencia es elevada quiere decir que el servicio es limitado y, por lo tanto, puede haber clientes que tengan acceso a él.
2 Número de conexiones. Si el servidor está desbordado debido a que, como administrador del sistema, no se ha previsto el alto número de conexiones y ha rebasado su límite, algunos clientes no podrán acceder al servicio y serán rechazados.
6.3. Pruebas de optimización
Desde el lado cliente o Front-end, se dispone de una serie aplicaciones, como son las herramientas Testing, las herramientas Web Analytics o las herramientas Web Interaction Anlytics, que permiten realizar pruebas sobre un sitio o página web para identificar posibles errores, observar comportamientos de usuario o testar en paralelo diferentes versiones de una aplicación web, todo ello para conseguir que la experiencia del usuario sea lo más positiva posible.
Las aplicaciones que se pueden utilizar para medir la usabilidad de una página o sitio web son las siguientes:
1 Web Analytics. Con ellas se podrá identificar qué problemas tiene el sitio web y dónde se encuentran estos problemas. Herramientas de este tipo son Google Anlytics, ComScore Digital o Coremetrix.
2 Web Interaction Anlytics. Permiten observar los comportamientos reales de los usuarios para determinar los problemas en la interacción.
3 Testing. Una vez localizados e identificados los problemas, se habrá creado otra página solucionando los errores cometidos en la anterior. Las herramientas testing se encargan de testar en paralelo las dos versiones para calcular el ratio de conversión para ambas, es decir, como respuesta a las solicitudes, muestran de forma aleatoria, una u otra. Herramientas para este propósito son Google Website Optimizer, Optimizely o Test Target.
Una de las aplicaciones Testing más utilizadas es la llamada prueba A/B, que básicamente consiste en mostrar al usuario dos versiones de la misma aplicación web para que él decida desde su perspectiva de visitante cuál de las dos es la mejor. Esta prueba permite determinar con datos, si los cambios realizados en la página o el nuevo diseño resultarán positivos antes de decir su aplicación definitiva.

Recuerde
Las herramientas Testing permiten eliminar la incertidumbre en la optimización de aplicaciones web.
En la siguiente imagen se puede observar cómo la herramienta de pruebas A/B envía a los visitantes a ambas páginas y contabiliza en el caso del ejemplo cuántos han terminado comprando en una u otra. Una vez que el programa considera que las páginas han sido probadas por suficientes visitantes, genera estadísticas de resultados para ambas páginas, da por terminada la prueba y muestra qué página es la que ha obtenido un mejor resultado en la prueba.

Ücretsiz ön izlemeyi tamamladınız.