Access Control – Eliminar Restricciones

En las lecciones anteriores:

hemos aprendido cómo controlar los datos devueltos por la vista CDS a través de los objetos de tipo Access Control.
Podemos crear varios objetos de control de tipo Access Control para la misma vista CDS. De hecho, no existe un límite. De aquí nace la siguiente pregunta: ¿Cuál es el objeto Access Control que va a controlar los datos devueltos cuando hay más de un objeto de este tipo para la misma vista CDS? En este caso SAP decidió evaluar todos los objetos en tiempo de ejecución y aplicar el control al que es menos restrictivo. Sabiendo esta respuesta podemos eliminar todas las restricciones establecidas a una vista CDS por los demás objetos de control, creando un nuevo objeto sin ninguna condición.
Utilizamos los objetos creados en las clases anteriores:

  • CDS
  • Primer Access Control
  • Segundo Access Control

En la situación actual el CDS devuelve sólo los registros con el grupo LF1 y R10 establecidos por los dos objetos de control, junto con la restricción aplicada por el filtro de la columna o elemento Plant por el objeto de autorización M_MATE_WRK.
A continuación, creamos un nuevo CDS menos restrictivo o, mejor dicho, nada restrictivo que nos ayudará a eliminar las demás restricciones.
Procedimiento:

  1. En Eclipse, en ADT utilizamos la opción del menú contextual que se habilita al pulsar el botón derecho del ratón sobre el nombre del paquete de desarrollo. Creamos el objeto Access Control de la carpeta Core Data Services.
  2. Una vez asignado el nombre, descripción y orden de transporte seguimos y seleccionamos de la plantilla de código la “Define unrestricted Access Role”.
  3. Implementamos la lógica utilizando un GRANT SELECT ON sin ningún filtro.
  4. Realizamos un test visualizando los datos devueltos por la vista CDS por la opción Data Preview. Como podemos ver ya no se aplican las restricciones de los demás objetos Access Control ya que el que prevalece es el objeto de control menos restrictivo. Con este procedimiento podemos eliminar las restricciones establecidas por el estándar SAP a las vistas estándar CDS.

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *