idForCurrentPage()
idForCurrentPage(string $name) : string
Retorna el identificador de un token para la página actual.
Parameters
string | $name | nombre para identificar unívocamente el token dentro de la página |
Provee métodos de protección contra ataques de tipo CSRF.
generateToken(string $id) : string
Genera un token que depende de <var>$id</var>, el ID de sesión y el parámetro de configuración <var>sal_hashes</var>.
El resultado es reproducible, es decir que es el mismo mientras no cambien los valores mencionados.
string | $id | un identificador para el token a generar; puede ser cualquier cosa que tenga sentido para la aplicación, por ejemplo el nombre del formulario donde se va a incluir el token |
si $id es vacío
isTokenValid(string $token, string $id) : boolean
Permite comprobar si un token es válido, es decir, si fue generado con {@link XgapCsrf::generateToken()} para el <var>$id</var> dado y en la misma sesión.
string | $token | token a verificar |
string | $id | identificador usado al generar el token |
TRUE si es válido; FALSE si no
generateSessionToken(string $id, integer $timeout) : string
Genera un token asociado a <var>$id</var>, que se guarda en la sesión.
El resultado no es reproducible, es decir que si se vuelve a invocar este método con el mismo $id, se genera un valor diferente y se sobreescribe el que pudiera haber en la sesión, invalidando el token anterior.
string | $id | un identificador para el token a generar; puede ser cualquier cosa que tenga sentido para la aplicación, por ejemplo el nombre del formulario donde se va a incluir el token |
integer | $timeout | tiempo máximo en segundos que puede durar el token; usar 0 para mantener el token durante toda la sesión. Actualmente no se está teniendo en cuenta; se lo considera siempre igual a 0. |
si $id es vacío
isSessionTokenValid(string $token, string $id, boolean $invalidar = TRUE) : boolean
Permite comprobar si un token generado es válido, es decir, si en la sesión actual se generó un token con {@link XgapCsrf::generateSessionToken()} para <var>$id</var> y coincide con el dado.
string | $token | token a verificar |
string | $id | identificador usado al generar el token |
boolean | $invalidar | ¿se debe invalidar el token? Si es TRUE, se elimina de la sesión el token correspondiente a $id; si es FALSE se mantiene |
TRUE si es válido; FALSE si no existe en la sesión o no coincide