Kiú

Atributos de los Esquemas de Autorización en Oracle APEX

Una vez que los usuarios se autentiquen en las aplicaciones APEX, podrán ejecutar cualquier página y ver todos los componentes, a menos que haya restricciones establecidas. La mayoría de las veces, estas restricciones se implementarán utilizando esquemas o condiciones de autorización. Los esquemas de autorización son componentes APEX que actúan como roles. Se asocian con un componente APEX en un lado y luego se asignan a un usuario o grupo de usuarios en el otro, permitiendo así que un desarrollador asegure sus aplicaciones utilizando un enfoque estándar y estructurado.

Podemos especificar un esquema de autorización para una aplicación, página o componente específico como una región, un elemento o un botón. Por ejemplo, podríamos usar un esquema de autorización para determinar selectivamente qué pestañas, regiones o barras de navegación ve un usuario. Un esquema de autorización tiene éxito o falla. Los tipos de esquemas de autorización comunes incluyen consultas SQL Exists, Consultas SQL NOT Exists y Función PL/SQL que devuelve un valor booleano. Si un esquema de autorización de nivel de componente o control tiene éxito, el usuario puede ver el componente o control. Si falla, el usuario no puede ver el componente o el control. Si falla una aplicación o un esquema de autorización a nivel de página, Oracle Application Express muestra un mensaje previamente definido.

Como acabamos de mencionar, un esquema de autorización en APEX es un componente que devuelve un VERDADERO o un FALSO cuando se evalúa. Los esquemas de autorización pueden asociarse con casi todos los componentes de APEX, desde la aplicación hasta una columna específica en un informe. Se diferencian de los esquemas de autenticación en que determinan a qué componentes de una aplicación puede acceder o ejecutar un usuario, mientras que un esquema de autenticación determina si las credenciales de un usuario son válidas.

Cuando se crea un esquema de autorización, APEX creará automáticamente un segundo esquema de autorización que será el opuesto al que se acaba de crear. Por ejemplo, si se creara un esquema de autorización para los Usuarios Administradores, también se crearía un segundo esquema llamado {Usuarios no Administradores}. Este segundo esquema puede asociarse con cualquier componente APEX y se evaluará a VERDADERO cuando el resultado del esquema de autorización original sea FALSO o viceversa. No es necesario seleccionar ninguna opción adicional para que se cree el segundo esquema de autorización opuesto.

Los esquemas de autorización son componentes compartidos y pueden ser referenciados desde casi cualquier otro componente. A pesar de su potencia y utilidad, los esquemas de autorización son uno de los componentes más simples de APEX, ya que contienen solo cinco atributos editables, como se muestra en la imagen de abajo:

Atributos pantalla Esquemas de Autorización

Nombre:

Si bien el nombre del esquema de autorización puede parecer que no tiene importancia, varias API hacen referencia a él. Por lo tanto, el nombre de un esquema de autorización no debe modificarse una vez creado, especialmente si se utilizan las API que hacen referencia a él. Desafortunadamente, no hay forma de imponer esto en APEX porque el campo de nombre siempre es editable.

Tipos de Esquemas:

Se pueden utilizar varios métodos diferentes para determinar el resultado de un esquema de autorización. Independientemente del tipo de esquema de autorización, el resultado final sigue siendo un valor booleano.

Se soportan los siguientes tipos:

Mensaje de error de identificación que aparece cuando se ha violado un esquema(Valor Necesario):

Éste es el texto de error que aparece cuando este esquema de autorización se aplica a una página o aplicación. Si el esquema de autorización falla (es decir, falla la comprobación de seguridad del usuario actual), aparece este texto.

Validar Esquema de Autorización:

Hay cuatro configuraciones posibles para este atributo:

Aunque establecer el valor de este atributo en “Una vez por Vista de Página” sin duda introducirá una pequeña cantidad de sobrecarga adicional, pero proporciona la implementación más segura de los esquemas de autorización porque la asociación de un usuario con un esquema puede ser revocada inmediatamente en la página siguiente a ver. Establecer este atributo en “Una vez por Sesión” es mucho más eficiente porque todos los esquemas de autorización se evaluarán solo cuando el usuario inicie sesión y los resultados se utilizarán durante toda la sesión. Por eso este esquema es el que esta por defecto.

Las opciones Una Vez por Componente y Siempre (Sin Almacenamiento en Caché) van a proporcionar información adicional sobre el componente que se protege mediante el esquema de autorización.

Para los tipos de esquema Consulta SQL Exists y Función PL/SQL Que Devuelve Valor Booleano, hay disponibles variables de enlace :APP_COMPONENT_TYPE, :APP_COMPONENT_ID y :APP_COMPONENT_NAME equivalentes.

Comentarios:

Introducimos comentarios o notas aquí. Estos comentarios no aparecen cuando se está ejecutando la aplicación.

Para conocer más sobre la Seguridad en Aplicaciones APEX te invito a que conozcas el curso de Seguridad que he desarrollado para aprender a asegurar nuestras aplicaciones en Oracle Application Express.

Ver Contenido del Curso de Seguridad en Oracle APEX

Salir de la versión móvil