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

p_item_name

El nombre del elemento de nivel de página.

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;

 

Share This