Directivas de seguridad de datos extensibles​

Completado

En esta unidad se proporciona información general de las directivas de seguridad de datos ampliable (XDS) en las aplicaciones de finanzas y operaciones. XDS permite a los desarrolladores complementar la seguridad basada en roles al restringir el acceso a registros de tabla según las directivas de seguridad. La consulta de la directiva aplica un filtro. Solo se podrá acceder desde las tablas restringidas a los registros que cumplen las condiciones del filtro.

Componentes de la directiva de seguridad de datos

Imagen del modelo conceptual de XDS con conceptos de rol, directivas y contexto de aplicación.

Los componentes de la directiva de seguridad de datos son los siguientes:

  • Tablas restringidas: la tabla o tablas desde las que se filtran o protegen los datos. Por ejemplo, en una directiva que protege el acceso a transacciones basadas en el cliente, CustTrans sería un ejemplo de una tabla restringida.
  • Tabla principal: se usa para proteger el contenido de la tabla restringida relacionada. En el siguiente ejemplo, la tabla CustTable sería la tabla principal. La tabla principal debe tener una relación explícita con las tablas restringidas.
  • Consulta de directiva: se usa para proteger el contenido de las tablas restringidas mediante una condición de rango en el contenido de la tabla principal. Solo se podrá acceder a los registros incluidos en el rango. Por ejemplo, el rango puede basarse en un valor específico para Cliente.
  • Contexto: controla las condiciones bajo las que se aplica una directiva. Los dos tipos principales de contextos disponibles son contexto de rol y contexto de aplicación:
    • Contexto del rol: se basa en los roles que se le asignan al usuario. El contexto de rol tiene dos subopciones:
      • NombreRol: indica que la directiva de seguridad solo se aplica al usuario de la aplicación asignado al rol igual al valor de NombreRol.
      • PropiedadRol: este valor se usa junto con la propiedad ContextString para especificar el contexto de varios roles de usuario. Se aplica cuando el valor Cadena de contexto definido en el campo Propiedad de rol para la directiva es el mismo que el valor del campo ContextString para los roles de usuario asignados.
    • Contexto de la aplicación: se aplica si la cadena de contexto establecida por la aplicación que usa el XDS::SetContext API es el mismo que el valor definido en el campo Cadena de contexto de la directiva. En el árbol de objetos de aplicación (AOT), las directivas y sus componentes se muestran en Seguridad > Directivas.

Consideraciones importantes

La consulta de directiva se agrega a la cláusula WHERE, o a la cláusula ON, en las operaciones SELECT, UPDATE, DELETE e INSERT que involucran las tablas restringidas especificadas. A menos que se diseñen y prueben minuciosamente, las consultas de directivas pueden tener un impacto importante en el rendimiento. Por tanto, asegúrese de seguir directrices simples pero importantes al desarrollar una directiva de seguridad de datos ampliable. Para obtener más información, consulte Desarrollar directivas de seguridad de datos ampliables (documento técnico).

Cuando se aplican dos o más directivas de seguridad, la intersección (no la unión) de los registros que se incluyen en cada directiva son los únicos registros a los que se puede acceder. Esto significa que un registro debe cumplir con todas las directivas de seguridad aplicables antes de que se permita el acceso al mismo.

En el siguiente vídeo se muestra cómo crear e implementar una directiva XDS.

Recursos adicionales

Para obtener información sobre cómo depurar directivas, crear directivas más avanzadas, incluido el encadenamiento de tablas restringidas, relaciones de tabla basadas en expresiones y mucho más, consulte estos recursos: