Introducción: Los chequeos de autorización protegen datos críticos mediante objetos que validan permisos de usuarios. ¡Esencial para cumplir normas de seguridad y controlar accesos en transacciones, programas y datos sensibles! Fundamentos de Autorizaciones Objeto de autorización: Conjunto de campos (ej: S_CARRID) que definen permisos. Campos de autorización: Ámbitos específicos (ej: CARRID, ACTVT) almacenados en SU20. Componentes clave: Elemento Transacción Función Clases SU21 Agrupan objetos (ej: BC_C) Objetos SU21 Definen campos y actividades (01=Crear, 02=Modificar, 03=Ver) Asignación SU01 Vincular objetos a roles de usuario Implementación en ABAP: AUTHORITY-CHECK Sintaxis y flujo: Pasos críticos: Declarar parámetro en pantalla de selección (ej: p_carrid). Usar SY-SUBRC para verificar resultado: 0 → Autorizado. ≠0 → Error/Acceso denegado. Importante: ¡Siempre validar SY-SUBRC tras el chequeo! Creación de Clase y Objeto de Autorización (SU21) 1. Crear Clase: Transacción SU21 → Botón Crear → Clase de objeto. Nombre (ej: Z_AUTH_CLASS). Texto descriptivo: "Clase para autorizaciones Z". Guardar 2. Crear Objeto: Clic derecho sobre clase → Crear objeto de autorización. Parámetros clave: Campo Valor Nombre Z_AUTH_OBJ Texto "Control acceso a datos Z" Campos Ej: Z_CAMPO1, ACTVT Guardar 3. Definir Actividades: Botón Actividades permitidas → Asignar códigos (01, 02, 03). Errores Comunes y Soluciones Error Causa Solución SY-SUBRC = 4 Usuario sin permiso Verificar asignación en SU01 Campo no existe Error en nombre Validar en SU20 Actividad no permitida Código incorrecto Revisar en SU21 → Actividades permitidas Consejos Rápidos Pruebas: Usar /h en pantalla de selección para debuggear SY-SUBRC. Seguridad: ¡Nunca omitir chequeos en transacciones críticas! Mantenimiento: "Documenta cada objeto en SU21 para facilitar auditorías." Takeaway Final Autorizaciones = Seguridad: Protegen datos con objetos personalizados (Z_AUTH_...). Implementación clave: Uso de AUTHORITY-CHECK + validación de SY-SUBRC. Reglas de oro: Crear clases/objetos en SU21 para necesidades específicas. Asignar objetos a roles via SU01. Nunca dejar datos sensibles sin protección.