Puede utilizar el paquete APEX_CUSTOM_AUTH para realizar varias operaciones relacionadas con la autenticación y la gestión de sesiones.
En esta entrega nos ocuparemos de las funciones que forman parte de este paquete y en la siguiente trataremos con los procedimientos.
Función APPLICATION_PAGE_ITEM_EXISTS
Esta función verifica la existencia de elementos a nivel de página dentro de la página actual de una aplicación. Esta función requiere el parámetro p_item_name. Esta función devuelve un valor booleano (VERDADERO o FALSO).
La sintaxis de la función es:
APEX_CUSTOM_AUTH.APPLICATION_PAGE_ITEM_EXISTS(
p_item_name IN VARCHAR2)
RETURN BOOLEAN;
Donde:
Parámetro | Descripción |
---|---|
|
|
Un ejemplo del uso de esta función es:
DECLARE
L_VAL BOOLEAN;
BEGIN
L_VAL := APEX_CUSTOM_AUTH.APPLICATION_PAGE_ITEM_EXISTS(:ITEM_NAME);
IF L_VAL THEN
htp.p(‘Item Exists’);
ELSE
htp.p(‘Does not Exist’);
END IF;
END;
Función CURRENT_PAGE_IS_PUBLIC
Esta función comprueba si el atributo de autenticación de la página actual está configurado como Página pública y devuelve un valor booleano (VERDADERO o FALSO)
La sintaxis de la función es:
APEX_CUSTOM_AUTH.CURRENT_PAGE_IS_PUBLIC
RETURN BOOLEAN;
Un ejemplo del uso de esta función es:
DECLARE
L_VAL BOOLEAN;
BEGIN
L_VAL := APEX_CUSTOM_AUTH.CURRENT_PAGE_IS_PUBLIC;
IF L_VAL THEN
htp.p(‘Page is Public’);
ELSE
htp.p(‘Page is not Public’);
END IF;
END;
Función GET_NEXT_SESSION_ID
Esta función genera el siguiente ID de sesión desde el generador de secuencias de Oracle Application Express. Esta función devuelve un número.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.GET_NEXT_SESSION_ID
RETURN NUMBER;
Un ejemplo del uso de esta función es:
DECLARE
VAL NUMBER;
BEGIN
VAL := APEX_CUSTOM_AUTH.GET_NEXT_SESSION_ID;
END;
Función GET_SECURITY_GROUP_ID
Esta función devuelve un número con el valor del ID del grupo de seguridad que identifica el espacio de trabajo del usuario actual.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.GET_SECURITY_GROUP_ID
RETURN NUMBER;
Un ejemplo del uso de esta función es:
DECLARE
VAL NUMBER;
BEGIN
VAL := APEX_CUSTOM_AUTH.GET_SECURITY_GROUP_ID;
END;
Función GET_SESSION_ID
Esta función devuelve la variable global APEX_APPLICATION.G_INSTANCE. GET_SESSION_ID. Devuelve un número.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.GET_SESSION_ID
RETURN NUMBER;
Un ejemplo del uso de esta función es:
DECLARE
VAL NUMBER;
BEGIN
VAL := APEX_CUSTOM_AUTH.GET_SESSION_ID;
END;
Función GET_SESSION_ID_FROM_COOKIE
Esta función devuelve el ID de sesión de Oracle APEX ubicado por la cookie de sesión en una solicitud de página en la sesión actual del navegador.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.GET_SESSION_ID_FROM_COOKIE
RETURN NUMBER;
Un ejemplo del uso de esta función es:
DECLARE
VAL NUMBER;
BEGIN
VAL := APEX_CUSTOM_AUTH.GET_SESSION_ID_FROM_COOKIE;
END;
Función GET_USER
Esta función devuelve la variable global APEX_APPLICATION.G_USER (VARCHAR2).
La sintaxis de la función es:
APEX_CUSTOM_AUTH.GET_USER
RETURN VARCHAR2;
Un ejemplo del uso de esta función es:
DECLARE
VAL VARCHAR2(256);
BEGIN
VAL := APEX_CUSTOM_AUTH.GET_USER;
END;
Función GET_USERNAME
Esta función devuelve el nombre de usuario registrado con la sesión actual de Oracle APEX en la tabla de sesiones internas. Normanlmente, suele ser el mismo que el usuario autenticado que ejecuta la página actual.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.GET_USERNAME
RETURN VARCHAR2;
Un ejemplo del uso de esta función es:
DECLARE
VAL VARCHAR2(256);
BEGIN
VAL := APEX_CUSTOM_AUTH.GET_USERNAME;
END;
Función IS_SESSION_VALID
Esta función es un resultado booleano obtenido al ejecutar el esquema de autenticación de la aplicación actual para determinar si existe una sesión válida. Esta función devuelve el resultado booleano del centinela de la página del esquema de autenticación.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.IS_SESSION_VALID
RETURN BOOLEAN;
Un ejemplo del uso de esta función es:
DECLARE
L_VAL BOOLEAN;
BEGIN
L_VAL := APEX_CUSTOM_AUTH.IS_SESSION_VALID;
IF L_VAL THEN
htp.p(‘Valid’);
ELSE
htp.p(‘Invalid’);
END IF;
END;
Función LDAP_DNPREP
Esta función reemplaza cualquier ocurrencia de un carácter de punto ( . ) con un carácter de subrayado ( _ ) en el valor pasado en p_username y luego devuelve ese valor de nombre de usuario recién modificado.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.LDAP_DNPREP (
p_username IN VARCHAR2)
RETURN VARCHAR2;
Donde:
Parámetro | Descripción |
---|---|
p_username |
Valor de nombre de usuario de un usuario final. |
Un ejemplo del uso de esta función es:
return apex_custom_auth.ldap_dnprep(p_username =>
:USERNAME);
Función SESSION_ID_EXISTS
Esta función devuelve un resultado booleano basado en la variable de paquete global que contiene el ID de sesión actual de Oracle APEX. Devuelve VERDADERO si el resultado es un número positivo y devuelve FALSO si el resultado es un número negativo.
La sintaxis de la función es:
APEX_CUSTOM_AUTH.SESSION_ID_EXISTS
RETURN BOOLEAN;
Un ejemplo del uso de esta función es:
DECLARE
L_VAL BOOLEAN;
BEGIN
L_VAL := APEX_CUSTOM_AUTH.SESSION_ID_EXISTS;
IF L_VAL THEN
htp.p(‘Exists’);
ELSE
htp.p(‘Does not exist’);
END IF;
END;