$seguridad_conexion
$seguridad_conexion : \SeguridadConexion
Clase que provee la funcionalidad de seguridad de la aplicación.
$seguridad_conexion : \SeguridadConexion
__construct(\SeguridadConexion $seguridad_conexion)
Instancia la variable de clase
\SeguridadConexion | $seguridad_conexion |
obtenerInformacionSeguridad( $opciones, $descripciones, $sufijos)
Lee las opciones de seguridad desde un archivo XML y las devuelve en <var>$opciones</var>, <var>$descripciones</var> y <var>$sufijos</var>.
$opciones | ||
$descripciones | ||
$sufijos |
si hay un error al leer el archivo descriptor de seguridad (XGAP_ARCHIVO_DESCRIPCION_SEGURIDAD)
usuarioLogueado() : array|null
Retorna datos del usuario logueado en la aplicación.
El resultado tiene la forma:
array( 'id' => identificador, 'nombre' => nombre corto, 'nombre_ext' => nombre completo )
los datos del usuario o null si no hay un usuario logueado
rolFuncionalUsuarioLogueado() : array|null
Retorna datos del rol funcional activo del usuario logueado en la aplicación.
El resultado tiene la forma:
array( 'id' => identificador, 'nombre' => nombre )
los datos del rol o null si no hay un rol activo
paginaUsaSeguridad(string $nombre_pagina) : boolean
Permite comprobar si una página usa seguridad.
string | $nombre_pagina |
true si usa seguridad; null si no lo puede comprobar porque no se encuentra el índice de páginas o una entrada para $nombre_pagina dentro del índice
puedeVerPagina(string $pagina) : boolean
Permite comprobar si el rol actual del usuario logueado le permite ver la página <var>$pagina</var> de la aplicación actual.
string | $pagina | ruta completa de la página a verificar |
true si $pagina no usa seguridad o el usuario tiene permiso para verla
puedeVerPaginaParams( $pagina, array $params) : boolean
Permite comprobar si el usuario logueado puede visitar la página <var>$pagina</var> con los parámetros <var>$params</var>.
Este método difiere de \puedeVerPagina() en que se utiliza para verificar si la página se puede visitar con una lista de parámetros dada, mientras que \puedeVerPagina() se usa para ver si la página en sí es accesible, independientemente de los parámetros. Esto hace posible que se permita la visita a una página con ciertos valores de parámetros, pero no con otros.
Por defecto este método retorna siempre true, pero se puede especializar en las aplicaciones con una clase de seguridad personalizada.
$pagina | ruta completa de la página a verificar |
|
array | $params | parámetros que recibe la página |
operacionHabilitada(\iOperacion $operacion) : boolean
Permite comprobar si una operación debe estar habilitada para ejecutar.
\iOperacion | $operacion |
true si la operación {@link iOperacion::esValida() es válida}
verificarSeguridad(string $error) : boolean
Comprueba que haya un usuario logueado con un rol seleccionado y que tenga permiso para visitar la página actual.
Si cumple las condiciones, define las \definirConstantesDeSeguridad(); si no, redirige a la página de inicio o de error.
string | $error | página de error |
actualizaPermisosPaginas(string $aplicacion, string $rol_usuario, string $tipo_pagina, array $paginas, string $operaciones)
Actualiza los permisos de las paginas.
Si no están las agrega en la tabla de paginas y establece, para un rol determinado, lo que se puede realizar.
string | $aplicacion | |
string | $rol_usuario | |
string | $tipo_pagina | |
array | $paginas | array de strings con los nombres de páginas a actualizar |
string | $operaciones |
actualizarPermisosPorPagina(string $aplicacion, string $pagina, array $roles_usuario, string $operaciones)
Actualiza los permisos para una página.
Define los roles que pueden accederla y las operaciones que se pueden realizar sobre ella.
string | $aplicacion | nombre de la aplicación que contiene la página |
string | $pagina | nombre de la página |
array | $roles_usuario | array de strings |
string | $operaciones | operaciones que se pueden realizar |
obtenerPaginasPermitidas(string $aplicacion, string $rol_usuario, string $tipo_pagina) : array
Permite obtener las páginas que se pueden visitar y operaciones posibles en cada una.
Para una aplicación, un rol de usuario y un tipo de página determinados, retorna un arreglo con las páginas permitidas como clave y las operaciones como un arreglo con las operaciones posibles
string | $aplicacion | |
string | $rol_usuario | |
string | $tipo_pagina |
destruirSesionAplicacion(boolean $regenerar_id_sesion = FALSE, $redirigir_a = NULL, string $mensaje = NULL, string $tipo_mensaje = \Flash::MENSAJE_INFORMACION, integer $duracion_mensaje = \Flash::TIEMPO_PRESENTACION_INDETERMINADO)
Elimina todos los datos de la sesión para la aplicación actual.
boolean | $regenerar_id_sesion | si es FALSE; se mantiene el ID de sesión; si es FALSE, el ID se cambia por uno nuevo, afectando a todas las aplicaciones, no sólo a la actual |
$redirigir_a | ||
string | $mensaje | mensaje a mostrar durante el siguiente request; si es vacío, no se muestra ningún mensaje |
string | $tipo_mensaje | tipo de mensaje; una de las constantes Flash::MENSAJE_* |
integer | $duracion_mensaje | tiempo en milisegundos por el que se debe presentar el mensaje; pasar NULL para usar el tiempo preestablecido |
puedeVerPaginaConSeguridad(String $pagina) : boolean
Permite comprobar si el rol actual del usuario logueado le permite ver la página <var>$pagina</var> de la aplicación actual, cuando dicha página usa seguridad.
String | $pagina | ruta completa sin consulta de la página a verificar |
true si el usuario tiene permiso para ver $pagina
verificarSeguridadPagina(string $error) : mixed
Comprueba si la página actual se puede acceder.
Redirige a la página de error si no se puede.
string | $error | página de error |
un array[string] con la lista de permisos de la página, o false si la página no tiene permisos establecidos