Documentación de Proyecto Sincro

Guard
in package

FinalYes

Aplica el control de acceso declarado por la ruta.

Orden: sesión → binding → inactividad → identidad → CSRF → rol → (solo TRACKING) conexiones y permiso por página.

Table of Contents

Methods

aplicar()  : Contexto
leerConexiones()  : array<string|int, int>
Lee y normaliza las conexiones solicitadas.
requireSesion()  : void
Sesión activa + binding IP/UA + control de inactividad.
resolverPaginaId()  : int
Resuelve el id de página desde su ruta declarada.

Methods

aplicar()

public static aplicar(Ruta $ruta) : Contexto
Parameters
$ruta : Ruta

: declaración de la ruta a ejecutar

Return values
Contexto —

contexto autorizado

leerConexiones()

Lee y normaliza las conexiones solicitadas.

private static leerConexiones() : array<string|int, int>
Return values
array<string|int, int> —

ids únicos y positivos

requireSesion()

Sesión activa + binding IP/UA + control de inactividad.

private static requireSesion(bool $renovar) : void

Los valores de binding se comprueban con is_string antes de pasarlos a hash_equals: un $_SESSION corrupto con un array provocaría un TypeError y un 500, cuando la respuesta correcta es 401.

Parameters
$renovar : bool

: si false, no actualiza last_activity (sondeos)

resolverPaginaId()

Resuelve el id de página desde su ruta declarada.

private static resolverPaginaId(string $ruta) : int

El resultado se cachea en sesión SOLO si es positivo: cachear el 0 dejaría la ruta rota hasta el siguiente inicio de sesión, incluso después de crear la página que faltaba.

Parameters
$ruta : string

: ruta declarada

Return values
int —

id de página, 0 si no existe


        
On this page

Search results