✒️ABAP Los chequeos de autorización
ABAP Los chequeos de autorización
Unidad n°4: Las subrutinas, los módulos de funciones y el procesamiento batch
Lección n°6: Los chequeos de autorización
Los chequeos de autorización o Authority Checks son objetos de SAP que nos permiten proteger datos críticos del sist. de los accesos sin autorización.
Por ejemplo podemos usarlos cuando se crea una nueva trans. y se desea restringir la utilización de la trans a determinados usuarios. Se implementan mediante los objetos de autorización.
Podemos usar los objetos de autorización existentes en el sistema o podemos crearlos. Para administrarlos, usaremos la trans SU21.
Del lado izquierdo veremos carpetas, las cuales son las clases. Dentro de estas encontraremos los objetos de autorización.
EJ: dentro de la clase BC_C vemos el objeto de autorización S_CARRID (para compañías aéreas), el cual tiene los campos CARRID y ACTVT.
El campo CARRID, es la denominación breve de la compañía y es parte clave de la tbd de vuelos SFLIGHT y si hacemos clic en el botón Actividades permitidas, correspondiente al objeto de autorización, veremos las actividades que se pueden hacer con el objeto de autorización.
Para el S_CARRID, están permitidas las actividades 01-Añadir o generar, 02--Modificar y 03-Visualizar.
Esto significa que si nuestro usuario tiene asignado el objeto de auto. S_CARRID, entonces si se usa el objeto de auto. previo a la generación, modificación o a la visualización del campo CARRID en cualquier programa, vamos a pasar la validación del objeto de auto.
La asignación del objeto de auto. S_CARRID a un usuarios en particular, se hace por un rol por medio de la trans SU01, solicitándolo al equipo de seguridad informática de SAP o a los admins BASIS.
Los campos que forman parte del objeto de autorización, los campos de auto. / ámbitos de auto. deben existir previamente en SAP o podemos crearlos. Para acceder a ellos iremos al menú Entorno -> Campos de autorización.
Acá veremos todos los campos existentes en el sistema para verificar autorizaciones. Buscamos el CARRID que es el que usa en el objeto de auto. S_CARRID, para ellos hacemos clic en el icono buscar .
Dentro veremos el campo de auto. CARRID, lo seleccionamos y hacemos clic "Visualizar" (anteojos) y veremos toda su info relativa.
Trans SU20: se puede acceder a la pantalla de los campos para verificar autorización. Podemos crear, modificar, eliminar y visualizar los campos de autorización.
La implementación de un objeto de autorización en un programa ABAP:
La sentencia AUTHORITY-CHECK se usa para validar si el usuario tiene autorización para acceder a un cierto objeto.
Se escribe:
Siempre, después de ejecutar la sentencia, debemos evaluar el contenido de la var. SY-SUBRC para ver si el usuario tiene o no autorización.
EJ: creamos un programa ABAP de test y hacemos clic en "Modelo":
- En la ventana que aparece, seleccionamos AUTHORITY-CHECK, escribimos el nombre del objeto de auto. que queremos implementar "S_CARRID" y clic en la tilde.
- En el código veremos que se generó una platilla del objeto de auto:
- Completamos el código creando el parám. P_CARRID en la pantalla de selección del programa, agregando el uso del parám en el objeto de auto. y completando la actividad con '03':
- Ejecutamos el programa para probar la implementación del objeto de auto.
- Introducimos un valor en el campo Compañía aérea de la pantalla de selección, escribimos /h en el campo de comandos para activar el modo debugging y clic en el icono de la tilde verde:
- El sistema informa que se ha activado el modo y ejecutamos el programa:
- Luego de ejecutarse la sentencia AUTHORITY-CHECK, vemos que el contenido de la var. SY-SUBRC es cero, por ende, el usuario tiene la autorización:
(Está en el extremo superior derecho). - Finalmente la salida por pantalla del programa nos muestra el mensaje "El usuario tiene autorización".
Paso a paso para crear una clase y un objeto de autorización:
- Para crear una nueva clase de objeto de auto. hacemos clic en "Crear" de la barra de herramientas de la trans SU21 y seleccionamos la opción Clase de objeto:
- En la prox. ventana de la creación de la clase, completamos el nombre, un texto que describa el objeto y grabamos.
- Finalmente creamos la clase.
Para crear un objeto de autorización dentro de la clase:
- Hacemos clic derecho sobre la clase y elegimos la opción Crear objeto de autorización.
- Completamos el nombre del objeto, un texto, los campos de auto. y grabamos.
 
 
 
Sobre el autor
Publicación académica de Candela Estefanía Calzada, en su ámbito de estudios para la Carrera Consultor ABAP.
Candela Estefanía Calzada
Profesión: Técnica Electrónica - Argentina - Legajo: JW91W
✒️Autor de: 160 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Me encuentro estudiando la ingeniería en sistemas de información. poseo amplia experiencia en edición de videos. tengo bases entorno a la programación que quiero continuar consolidando.
Certificación Académica de Candela Calzada