![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP Los chequeos de autorización
ABAP Los chequeos de autorización
![ABAP Los chequeos de autorización ABAP Los chequeos de autorización](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/245.jpg)
Los Chequeos de Autorización
En este vídeo explicaremos que son los autority checks y porqué es necesario utilizarlos. Los autority checks son objetos de SAP que nos permiten proteger los datos críticos del sistema de los accesos sin autorización. La sentencia autority check valida si el usuario tiene autorización para acceder a los datos. Estos permisos son asignados por el administrador del sistema SAP. Para ello nos ubicamos en la transacción SU21 que es la que nos permite administrar los objetos de autorización. Los objetos de autorización se encuentran agrupados por clases. Para crear una clase basta con presionar el botón derecho del mouse y seleccionar la opción Create Object Class. Luego de creada la clase presionando el botón derecho del mouse y seleccionando la opción Create Authorization Object creamos el objeto de autorización. Veamos la clase estándar BC_C y particularmente el objeto S_CARRID. Aquí vemos la configuración del objeto de autorización, tiene asignado el campo CARRID que es el código de la linea aérea y el campo de actividad que nos permite identificar la acción a realizar. Si cliqueamos en las actividades permitidas, vemos que está permitido crear, cambiar y visualizar los datos. Ahora veamos el Authorization Fields. CARRID que forma parte del objeto de autorización S_CARRID. Para ello en la transacción SU20 vamos a buscar el campo CARRID. Visualizamos el campo y vemos que pertenece a la ayuda de busqueda S_CARRIER_ID. Si ejecutamos el Authorization Field no encontraremos valores debido a que la ayuda de busqueda se alimenta de la tabla star que no tiene datos cargados. Ahora vamos a hacer una referencia de utilización para hallar el programa de prueba en donde se utiliza el objeto de autorización S_CARRID. Este programa tiene una pantalla de selección donde se ingresa un código de compañia aérea. Luego se valida si el usuario que ejecuta tiene autorización para visualizar los datos de esta compañia aérea. En caso negativo se emite un mensaje de error y se termina el procesamiento. En caso positivo se permite el acceso a los datos. Vamos a poner un breakpoint y ejecutamos el programa. Aquí ingresamos un código cualquiera de compañía aérea y ejecutamos. Ejecutamos la sentencia autority check y vemos que el sy-subrc es cero (0) por lo que indica que tenemos permiso de visualización de los datos. Si ejecutamos de nuevo el programa y cambiamos por debug el valor del sy-subrc para simular no tener autorización visualizamos en pantalla el mensaje de error que se produce por no tener autorización al dato.
AUDIO TIPS: Existen 3 módulos de funciones que nos permiten ejecutar una transacción saltando los chequeos de autorizaciones que posee la transacción. Estos módulos de funciones son los siguientes: La llamada a la función TRANSACTION_CALL_BIA_RFC pasándole en el parámetro DECODE la transacción ejecutada. El otro módulo de funciones es la llamada a la función C160_TRANSACTION_CALL pasándole en el parámetro I_DECODE la transacción ejecutada. Y por último la llamada a la función RS_HDSYI_CALL_TC_VARIANT CONT DECODE igual a la transacción a ejecutar y además hay que desmarcar el flag de autority check.
 
 
 
Sobre el autor
Publicación académica de Vismark Eyner Sevillano Moreno, en su ámbito de estudios para la Carrera Consultor ABAP.
Vismark Eyner Sevillano Moreno
Profesión: Tecnologo en Sistemas - Colombia - Legajo: KN43C
✒️Autor de: 62 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Aprender todo lo relacionado con programación sap abap, para desenvolverme en el área laboral en el sector de programación abap.
Certificación Académica de Vismark Sevillano