Solución:
Aunque APEX tiene un concepto de administración de usuarios incorporado llamado “Grupos”, debo confesar que nunca lo he usado, y una lectura rápida de la documentación no me deja claro cómo los usa para controlar el acceso (pero vea la respuesta de Tom aquí para eso).
Probablemente necesitará crear tablas de usuarios / roles dentro de su base de datos y usarlas junto con los esquemas de autorización APEX para controlar el acceso a las páginas. Se podría crear un único esquema de autorización del tipo “Función PL / SQL que devuelve booleano” con el cuerpo de la función:
return my_auth_pkg.is_authorized (p_user => :app_user,
p_app_id => :app_id
p_page_id => :app_page_id);
Luego, implementaría el paquete para buscar los privilegios del usuario y decidir si devolver VERDADERO o FALSO para la aplicación y la identificación de la página.
Alternativamente, puede realizar SQL para verificar el acceso directamente en el Esquema de autorización:
(NB “user_roles” y “role_pages” son nombres que inventé para representar tu mesas)
Solo deseo ampliar la respuesta de Tony, que en sí misma es correcta. Solo quiero mostrarte otra forma, que creo que sería más fácil para un principiante total y omite la creación de tablas.
Si su aplicación utiliza Apex como esquema de autenticación, sus usuarios son administrados a través de la administración del propio espacio de trabajo. Puede crear, editar y eliminar usuarios, pero también puede definir grupos y vincular usuarios a grupos. Es posible crear varios tipos de usuarios de “usuario final” y definir un par de grupos, como “Ejecutivos”.
Cuando haya creado su grupo, vaya al usuario al que desea asignar este grupo y agregue el grupo a los grupos de ese usuario.
Una vez que haya configurado eso, aún necesita los esquemas de autorización. El hecho es que necesita algunos conocimientos de pl / sql aquí, pero es posible mantener la codificación al mínimo, gracias a un práctico api-work.
El current_user_in_group hace lo que dice: comprueba si el usuario actual tiene asignado dicho grupo. Con un poco de expansión usando algunas estructuras IF simples, ¡puede aumentarlo un poco!
No es que recomiende totalmente este método, lo encuentro un poco tedioso y necesitas que alguien entre en APEX para mantener realmente a los usuarios y sus grupos, pero bien podría ser que esto sea aceptable en tu entorno. Sin embargo, podrías usarlo para empezar. Puede cambiar muy fácilmente los esquemas de autenticación y, al modificar sus esquemas de autorización para que cumplan con el nuevo esquema de autenticación, puede ajustarlo fácil y rápidamente después. Depende de sus prioridades y objetivos, por supuesto.