{"id":14238,"date":"2020-01-30T18:07:00","date_gmt":"2020-01-30T18:07:00","guid":{"rendered":"http:\/\/clartechsolutions.com\/?p=14238"},"modified":"2023-03-02T00:21:06","modified_gmt":"2023-03-02T00:21:06","slug":"atributos-de-los-esquemas-de-autorizacion-en-oracle-apex","status":"publish","type":"post","link":"https:\/\/kiusi.com\/en\/atributos-de-los-esquemas-de-autorizacion-en-oracle-apex\/","title":{"rendered":"Atributos de los Esquemas de Autorizaci\u00f3n en Oracle APEX"},"content":{"rendered":"<p>Una vez que los usuarios se autentiquen en las aplicaciones APEX, podr\u00e1n ejecutar cualquier p\u00e1gina y ver todos los componentes, a menos que haya restricciones establecidas. La mayor\u00eda de las veces, estas restricciones se implementar\u00e1n utilizando esquemas o condiciones de autorizaci\u00f3n. Los esquemas de autorizaci\u00f3n son componentes APEX que act\u00faan 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\u00ed que un desarrollador asegure sus aplicaciones utilizando un enfoque est\u00e1ndar y estructurado.<\/p>\n<p>Podemos especificar un esquema de autorizaci\u00f3n para una aplicaci\u00f3n, p\u00e1gina o componente espec\u00edfico como una regi\u00f3n, un elemento o un bot\u00f3n. Por ejemplo, podr\u00edamos usar un esquema de autorizaci\u00f3n para determinar selectivamente qu\u00e9 pesta\u00f1as, regiones o barras de navegaci\u00f3n ve un usuario. Un esquema de autorizaci\u00f3n tiene \u00e9xito o falla. Los tipos de esquemas de autorizaci\u00f3n comunes incluyen consultas SQL Exists, Consultas SQL NOT Exists y Funci\u00f3n PL\/SQL que devuelve un valor booleano. Si un esquema de autorizaci\u00f3n de nivel de componente o control tiene \u00e9xito, el usuario puede ver el componente o control. Si falla, el usuario no puede ver el componente o el control. Si falla una aplicaci\u00f3n o un esquema de autorizaci\u00f3n a nivel de p\u00e1gina, Oracle Application Express muestra un mensaje previamente definido.<\/p>\n<p>Como acabamos de mencionar, un esquema de autorizaci\u00f3n en APEX es un componente que devuelve un VERDADERO o un FALSO cuando se eval\u00faa. Los esquemas de autorizaci\u00f3n pueden asociarse con casi todos los componentes de APEX, desde la aplicaci\u00f3n hasta una columna espec\u00edfica en un informe. Se diferencian de los esquemas de autenticaci\u00f3n en que determinan a qu\u00e9 componentes de una aplicaci\u00f3n puede acceder o ejecutar un usuario, mientras que un esquema de autenticaci\u00f3n determina si las credenciales de un usuario son v\u00e1lidas.<\/p>\n<p>Cuando se crea un esquema de autorizaci\u00f3n, APEX crear\u00e1 autom\u00e1ticamente un segundo esquema de autorizaci\u00f3n que ser\u00e1 el opuesto al que se acaba de crear. Por ejemplo, si se creara un esquema de autorizaci\u00f3n para los Usuarios Administradores, tambi\u00e9n se crear\u00eda un segundo esquema llamado {Usuarios no Administradores}. Este segundo esquema puede asociarse con cualquier componente APEX y se evaluar\u00e1 a VERDADERO cuando el resultado del esquema de autorizaci\u00f3n original sea FALSO o viceversa. No es necesario seleccionar ninguna opci\u00f3n adicional para que se cree el segundo esquema de autorizaci\u00f3n opuesto.<\/p>\n<p>Los esquemas de autorizaci\u00f3n son componentes compartidos y pueden ser referenciados desde casi cualquier otro componente. A pesar de su potencia y utilidad, los esquemas de autorizaci\u00f3n son uno de los componentes m\u00e1s simples de APEX, ya que contienen solo cinco atributos editables, como se muestra en la imagen de abajo:<\/p>\n<p><img data-recalc-dims=\"1\" fetchpriority=\"high\" decoding=\"async\" data-attachment-id=\"16307\" data-permalink=\"https:\/\/kiusi.com\/en\/atributos-de-los-esquemas-de-autorizacion-en-oracle-apex\/imagen01-2\/\" data-orig-file=\"https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?fit=1015%2C932&amp;ssl=1\" data-orig-size=\"1015,932\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Clarisa Maman Orfali&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1580394376&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"imagen01\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?fit=750%2C689&amp;ssl=1\" class=\"wp-image-16307 size-full\" src=\"https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?resize=750%2C689&#038;ssl=1\" alt=\"\" width=\"750\" height=\"689\" srcset=\"https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?w=1015&amp;ssl=1 1015w, https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?resize=300%2C275&amp;ssl=1 300w, https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?resize=768%2C705&amp;ssl=1 768w, https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/imagen01.jpg?resize=13%2C12&amp;ssl=1 13w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/p>\n<h3>Atributos pantalla Esquemas de Autorizaci\u00f3n<\/h3>\n<p><strong>Nombre:<\/strong><\/p>\n<p>Si bien el nombre del esquema de autorizaci\u00f3n puede parecer que no tiene importancia, varias API hacen referencia a \u00e9l. Por lo tanto, el nombre de un esquema de autorizaci\u00f3n no debe modificarse una vez creado, especialmente si se utilizan las API que hacen referencia a \u00e9l. Desafortunadamente, no hay forma de imponer esto en APEX porque el campo de nombre siempre es editable.<\/p>\n<p><strong>Tipos de Esquemas:<\/strong><\/p>\n<p>Se pueden utilizar varios m\u00e9todos diferentes para determinar el resultado de un esquema de autorizaci\u00f3n. Independientemente del tipo de esquema de autorizaci\u00f3n, el resultado final sigue siendo un valor booleano.<\/p>\n<p>Se soportan los siguientes tipos:<\/p>\n<ul>\n<li><b>Consulta SQL Exists<\/b>: consulta que hace que se apruebe el esquema de autorizaci\u00f3n si devuelve al menos una fila y provoca que \u00e9ste falle si no devuelve ninguna<\/li>\n<li><b>Consulta SQL NOT Exists<\/b>: consulta que hace que se apruebe el esquema de autorizaci\u00f3n si no devuelve ninguna fila y provoca que \u00e9ste falle si devuelve una o m\u00e1s filas<\/li>\n<li><b>Funci\u00f3n PL\/SQL Que Devuelve Valor Booleano<\/b>: cuerpo de la funci\u00f3n PL\/SQL que devuelve un valor true o false. Un valor false provoca que el esquema de autorizaci\u00f3n falle. Un valor true hace que se apruebe.<\/li>\n<li><b>Elemento en Expresi\u00f3n 1 Nulo<\/b>: el valor del elemento especificado en la expresi\u00f3n 1 es nulo.<\/li>\n<li><b>Elemento en Expresi\u00f3n 1 No Nulo<\/b>: el valor del elemento especificado en la expresi\u00f3n 1 no es nulo.<\/li>\n<li><b>Valor de Preferencia en Expresi\u00f3n 1 Equivale a Expresi\u00f3n 2<\/b>: el valor de preferencia especificado en la expresi\u00f3n 1 equivale a la expresi\u00f3n 2.<\/li>\n<li><b>Valor de Preferencia en Expresi\u00f3n 1 No Equivale a Expresi\u00f3n 2<\/b>: el valor de preferencia especificado en la expresi\u00f3n 1 no equivale a la expresi\u00f3n 2.<\/li>\n<li><b>Valor de Elemento en Expresi\u00f3n 1 Equivale a Expresi\u00f3n 2<\/b>: el valor del elemento especificado en la expresi\u00f3n 1 equivale a la expresi\u00f3n 2.<\/li>\n<li><b>Valor de Elemento en Expresi\u00f3n 1 No Equivale a Expresi\u00f3n 2<\/b>: el valor del elemento especificado en la expresi\u00f3n 1 no equivale a la expresi\u00f3n 2.<\/li>\n<li><b>Est\u00e1 en el Grupo<\/b>: introduzca un nombre de grupo. La autorizaci\u00f3n es correcta si el grupo est\u00e1 activado como un grupo din\u00e1mico para la sesi\u00f3n (consulte APEX_AUTHORIZATION.ENABLE_DYNAMIC_GROUPS). Si la aplicaci\u00f3n utiliza la autenticaci\u00f3n de cuentas de Application Express, esta comprobaci\u00f3n tambi\u00e9n incluye los grupos de espacios de trabajo que se otorgan al usuario. Si se utiliza la autenticaci\u00f3n de base de datos, esta comprobaci\u00f3n tambi\u00e9n incluye los roles de base de datos que se otorgan al usuario.<\/li>\n<li><b>No Est\u00e1 en el Grupo<\/b>: el grupo no est\u00e1 activado o no se ha otorgado al usuario. Consulte\u00a0<b>Est\u00e1 en el Grupo<\/b>\u00a0para obtener m\u00e1s informaci\u00f3n.<\/li>\n<\/ul>\n<p><strong>Mensaje de error de identificaci\u00f3n que aparece cuando se ha violado un esquema<span class=\"u-VisuallyHidden\">(Valor Necesario):<\/span><\/strong><\/p>\n<p>\u00c9ste es el texto de error que aparece cuando este esquema de autorizaci\u00f3n se aplica a una p\u00e1gina o aplicaci\u00f3n.\u00a0Si el esquema de autorizaci\u00f3n falla (es decir, falla la comprobaci\u00f3n de seguridad del usuario actual), aparece este texto.<\/p>\n<p><strong>Validar Esquema de Autorizaci\u00f3n:<\/strong><\/p>\n<p>Hay cuatro configuraciones posibles para este atributo:<\/p>\n<ul>\n<li><strong>Una Vez por Sesi\u00f3n<\/strong>: Se eval\u00faa solo una vez y utiliza siempre el resultado memorizado posteriormente.<\/li>\n<li><strong>Una Vez por Vista de P\u00e1gina<\/strong>: se eval\u00faa una vez para cada solicitud que se procesa. Utiliza el resultado memorizado si se hace referencia al esquema de autorizaci\u00f3n en m\u00e1s de un componente en la p\u00e1gina.<\/li>\n<li><strong>Una Vez por Componente<\/strong>: se eval\u00faa una vez para cada componente que se hace referencia al esquema de autorizaci\u00f3n, pero guarda el resultado en la sesi\u00f3n. Las dem\u00e1s solicitudes para presentar o procesar el esquema utilizan el resultado memorizado.<\/li>\n<li><strong>Siempre (Sin almacenamiento en Cach\u00e9)<\/strong>: el esquema de autorizaci\u00f3n se eval\u00faa siempre.<\/li>\n<\/ul>\n<p>Aunque establecer el valor de este atributo en &#8220;<strong>Una vez por Vista de P\u00e1gina<\/strong>&#8221; sin duda introducir\u00e1 una peque\u00f1a cantidad de sobrecarga adicional, pero proporciona la implementaci\u00f3n m\u00e1s segura de los esquemas de autorizaci\u00f3n porque la asociaci\u00f3n de un usuario con un esquema puede ser revocada inmediatamente en la p\u00e1gina siguiente a ver. Establecer este atributo en &#8220;<strong>Una vez por Sesi\u00f3n<\/strong>&#8221; es mucho m\u00e1s eficiente porque todos los esquemas de autorizaci\u00f3n se evaluar\u00e1n solo cuando el usuario inicie sesi\u00f3n y los resultados se utilizar\u00e1n durante toda la sesi\u00f3n. Por eso este esquema es el que esta por defecto.<\/p>\n<p>Las opciones\u00a0<strong><em>Una Vez por Componente<\/em>\u00a0and\u00a0<em>Siempre (Sin Almacenamiento en Cach\u00e9)<\/em><\/strong>\u00a0van a proporcionar informaci\u00f3n adicional sobre el componente que se protege mediante el esquema de autorizaci\u00f3n.<\/p>\n<p>Para los tipos de esquema\u00a0Consulta SQL Exists\u00a0y\u00a0Funci\u00f3n PL\/SQL\u00a0Que Devuelve Valor Booleano, hay disponibles variables de enlace :APP_COMPONENT_TYPE, :APP_COMPONENT_ID y :APP_COMPONENT_NAME\u00a0equivalentes.<\/p>\n<p><strong>Comentarios:<\/strong><\/p>\n<p>Introducimos comentarios o notas aqu\u00ed. Estos comentarios no aparecen cuando se est\u00e1 ejecutando la aplicaci\u00f3n.<\/p>\n<p>Para conocer m\u00e1s 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.<\/p>\n<p>Ver Contenido del Curso de <a href=\"http:\/\/clartechsolutions.com\/cursos\/seguridad-en-oracle-application-express\/\" target=\"_blank\" rel=\"noopener noreferrer\">Seguridad en Oracle APEX<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Una vez que los usuarios se autentiquen en las aplicaciones APEX, podr\u00e1n ejecutar cualquier p\u00e1gina y ver todos los componentes, a menos que haya restricciones establecidas. La mayor\u00eda de las veces, estas restricciones se implementar\u00e1n utilizando esquemas o condiciones de autorizaci\u00f3n. Los esquemas de autorizaci\u00f3n son componentes APEX que act\u00faan como roles. Se asocian con<a class=\"more-link\" href=\"https:\/\/kiusi.com\/en\/atributos-de-los-esquemas-de-autorizacion-en-oracle-apex\/\">Continue reading <span class=\"screen-reader-text\">&#8220;Atributos de los Esquemas de Autorizaci\u00f3n en Oracle APEX&#8221;<\/span><\/a><\/p>","protected":false},"author":132749711,"featured_media":16517,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":true},"categories":[121913,121923,121928,121933,121999],"tags":[121903,122021,122022,122023,122024,121886,121998,121957],"class_list":["post-14238","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-oracle-apex-18-1","category-oracle-apex-18-2","category-oracle-apex-19-1","category-oracle-apex-19-2","tag-apex","tag-aplicaciones","tag-atributos","tag-autorizacion","tag-esquemas","tag-oracle","tag-oracle-apex-19-2","tag-seguridad","entry"],"jetpack_publicize_connections":[],"jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/paMvMS-3HE","amp_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/kiusi.com\/wp-content\/uploads\/2020\/01\/Destacada-Atributos-de-los-Esquemas-de-Autorizacion-en-Oracle-APEX.jpg?fit=2949%2C1735&ssl=1","_links":{"self":[{"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/posts\/14238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/users\/132749711"}],"replies":[{"embeddable":true,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/comments?post=14238"}],"version-history":[{"count":4,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/posts\/14238\/revisions"}],"predecessor-version":[{"id":16585,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/posts\/14238\/revisions\/16585"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/media\/16517"}],"wp:attachment":[{"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/media?parent=14238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/categories?post=14238"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kiusi.com\/en\/wp-json\/wp\/v2\/tags?post=14238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}