✒️SAP BASIS El concepto de autorización
SAP BASIS El concepto de autorización
Concepto de Autorizacion
Las autorizaciones de los usuarios son creadas usando roles y perfiles. Los administradores crean los roles y el sistema provee el soporte para la creacion de las autorizaciones asociadas.
1. Objetos de Autorizacion y Chequeo de Autorizacion:
Las acciones y los accesos a los datos estan protegidos a traves de los objetos de autorizacion en el sistema SAP. Los objetos de autorizacion se encuentran en el sistema SAP.
Para facilitar un poco la organizacion, los objetos de autorizacion estan divididos en diferentes clases.
Los objetos de autorizacion permiten verificaciones complejas que involucran multiples condiciones que permiten a un usuario realizar una accion. Las condiciones son especificadas en los campos de autorizacion para el objeto de autorizacion y son evaluados estos campos mediante la condicion logica AND para la verificacion. O sea, se deben cumplir todas las condiciones para que la verificacion de autorizacion sea exitosa.
Los objetos de autorizacion y los campos que contienen tienen nombres tecnicos y descriptivos.
En el ejemplo de la figura 522, el objeto de autorizacion User Master Maintenance: User Groups (nombre tecnico: S_USER_GRP) contiene dos campos de autorizacion: Actividad (nombre tecnico: ACTVT) Y User Group in User Master Record (nombre tecnico: CLASS).
El objeto de autorizacion S_USER_GRP protege el registro maestro de usuario justamente. Un objeto de autorizacion puede incluir hasta diez campos de autorizacion.
Una autorizacion siempre se asocia con solo un objeto de autorizacion y esta formada por el valor para los campos del objeto de autorizacion. Una autorizacion es un permiso para realizar cierta accion en el sistema SAP. La accion es definida sobre la base de los valores para cada uno de los campos de un objeto de autorizacion.
Por ejemplo, la autorizacion B en la figura para el objeto de autorizacion S_USER_GRP permite todos los registros de usuarios que NO estan asignados al grupo SUPER. La autorizacion A, en cambio, permite mostrar registros de usuarios pertenecientes a ese grupo.
Es posible que existan multiples autorizaciones para un objeto de autorizacion. Algunas autorizaciones ya estan incluidas en el sistema por SAP, pero la mayor parte son creadas especificamente por requerimientos de los clientes.
Cuando un usuario se loguea a un cliente de un sistema SAP, sus autorizaciones son cargadas en el contexto de usuario. El contexto de usuario se encuentra en el buffer (en la memoria principal, puedes consultarla mediante la transacion SU56) del servidor de aplicacion.
Transaccion SU56: es utilizada para monitorear el numero de objetos que estan en buffer referentes a los roles de autorizacion y perfiles del usuario.
Cuando el usuario llama a la transaccion, el sistema verifica si el usuario tiene autorizacion necesaria en el contexto de usuario para acceder a la Tx. Las verificaciones de autorizacion utilizan las autorizaciones que existen en el contexto de usuario. Si se asignan autorizaciones al usuario, podria ser necesario para este usuario volverse a loguear al sistema SAP para poder utilizar estas nuevas autorizaciones.
Si la verificacion de autorizacion para llamar a la transaccion es exitosa, el sistema luego muestra la pantalla inicial de la transaccion. Dependiendo de la transaccion, el usuario puede crear datos o seleccionar acciones. Cuando el usuario realiza la accion, los datos son enviados al dispatcher, el cual los pasa a un work process para que ejecute el procesamiento.
Verificaciones de autorizacion (AUTHORITY-CHECK) que son realizadas durante la ejecucion en el work process son programadas dentro del codigo por los desarroladores ABAP para proteger los datos y las acciones que van a realizarse.
Si el contexto de usuario contiene todas las autorizaciones requeridas para la verificacion (codigo de retorno = 0), los datos y las acciones son procesadas y la proxima pantalla es devuelta al usuario. Si falta alguna de las autorizaciones requeridas, el procesamiento no se realiza y el usuario recibe un mensaje que indica que las autorizaciones son insuficientes.
Esto se controla mediante la evaluacion del codigo de retorno. En este caso, no seria igual a 0.
Todas las autorizaciones son permisos. No hay autorizaciones para prohibir.
Todo aquello que no esta explicitamente permitido esta prohibido. Esto es lo que se conoce como concepto de autorizacion positivo.
2. Mantenimiento de Roles: Menu y Autorizaciones:
El Mantenimiento de Roles (transaccion PFCG, previamente tambien llamada Profile Generator o Actividades de Grupo) simplifica la creacion de autorizaciones y sus respectivas asignaciones a los usuarios.
Transaccion PFCG: es una de las mas utilizadas en cuanto a seguridad del sistema dado que mediante la misma se crean los roles con las autorizaciones que luego seran asignadas a los usuarios.
En el mantenimiento de roles, las transacciones, que desde el punto de vista de la compañia, pertenecen a un mismo grupo se seleccionan. El mantenimiento de roles crea las autorizaciones con los valores de campos requeridos para los objetos de autorizacion que son verificados en la transaccion elegida.
Un rol puede ser asignado a varios usuarios. Los cambios a un rol por lo tanto tienen efecto sobre todos estos usuarios. Los usuarios pueden ser asignados a mas de un rol.
El menu de usuario se compone del menu de rol y contiene las entradas (transacciones, URLs, reportes, etc) que son asignadas al usuario a traves de roles.
Puedes acceder al mantenimiento de roles con la transaccion PFCG o mediante el menu de la pantalla inicial del sistema en Tools --> Administration --> User Maintenance -- > Role Administration -- > Roles. Ingresa el nombre del rol y presiona el boton Create o Change. Seleccina la solapa Menu.
Selecciona y modifica las funciones: En el arbol de menu se pueden realizar ajustes para los roles individuales. Se pueden insertar o borrar transacciones en el arbol de transacciones.
Si se selecciona el boton Report, puedes integrar reportes (programas ABAP). En este caso la transaccion PFCG se encarga de crear los codigos de transaccion (si es que no existen para el reporte) con el cual los reportes luego pueden ser accedidos.
Si seleccionamos el boton Other, es posible agregar direcciones de internet o vinculos a archivos. Modificacion de Menus: podemos crear, mover, borrar, y renombrar directorios y sub directorios si es necesario. La funcion Drag&Drop se puede utilizar tambien.
El mantenimiento de los roles automaticamente crea las autorizaciones que estan asociadas con las transacciones especificas en el arbol del menu. De todas maneras, todos los valores de autorizacion deben ser verificados manualmente y ajustados si fuese necesario para que concuerden con los requerimientos y permisos que se deben otorgar con el rol.
El administrador del sistema es responsable para esta tarea, junto con el area apropiada para quien se estan creando o modificando los roles.
Selecciona la solapa Authorizations y luego el boton Change Authorization Data o Display Authorization Data, dependiendo en el cual modo estemos trabajando en la transaccion PFCG.
En la pantalla que ingresamos podremos ver y modificar el contenido de las autorizaciones, o sea los valores propuestos para los campos de los objetos de autorizacion.
El significado de los indicadores es el siguiente:
- Luz verde: el objeto de autorizacion tiene un valor propuesto para cada uno de los campos.
- Luz amarilla: el objeto de autorizacion necesita mantenimiento manual al menos para uno de los campos.
- Luz roja: Los niveles organizacionales no estan definidos.
Nota: La falta de un valor propuesto por PFCG para alguno de los campos del objeto de autorizacion puede ser por ejemplo en los casos de accesos a archivos externos donde no se puede determinar si el acceso sera de lectura o de lectura/escritura.
Algunos campos aparecen en muchas autorizaciones por lo que estos campos se denominan Niveles Organizacionales. Si editamos una entrada en el nivel organizacional utilizando el boton "Organizational levels" entonces los cambios afectaran a todos los objetos de autorizacion que lo contienen.
¿Que son niveles organizacionales?
Son campos determinados por SAP en el Concepto de Autorizacion que se refieren a la estructura de la compañia. Estos campos aparecen en la mayoria de las autorizaciones.
Por lo tanto dentro de un rol estos campos pueden aparecer muchas veces. El boton "Organizational levels" en la transaccion PFCG facilita su mantenimiento.
Una vez que todas las autorizaciones han sido mantenidas como se requiere, el perfil de autorizacion puede ser generado mediante el boton "Generate". Las autorizaciones se combinan en un perfil. Los perfiles deben ingresarse en los registros maestros de usuarios, esto se denomina Comparacion de Registros Maestros de Usuarios ( User Master Record Comparission).
3. Usuarios y Roles
La asignacion de usuarios a roles se realiza mediante la transaccion PFCG (mantenimiento de roles) o en la transaccion de mantenimiento de usuario SU01. Selecciona la solapa User y los ID de usuarios a los que se les asignara el rol.
Una comparacion de registros maestros de usuarios determina si los perfiles de autorizacion deben ser agregados o eliminados del usuario basandose en la asignacion de roles para este.
Durante una comparacion se agregaran perfiles al maestro de usuario si nuevos roles son agregados.
Si la asignacion de roles es removida manualmente o porque se cumple la fecha de vencimiento del rol para el usuario los perfiles correspondientes son eliminados del registro maestro de usuario.
La comparacion puede realizarse por cada rol individualmente. Seleccionando el rol en la funcion de mantenimiento de roles en la solapa User y luego seleccionando User coparisson. En la ventana que aparece, seleccionamos Complete comparison.
Para mas informacion, selecciona el boton de "informacion" en la transaccion PFCG y el mismo boton en la comparacion de maestros de usuarios. Durante una comparacion completa, los perfiles obsoletos son eliminados.
Si multiples asignaciones de roles va a ser actualizada, puedes realizar una comparacion en la transaccion PFCG seleccionando Utilities --> Mass comparison o llamando a la transaccion PFUD. Puedes seleccionar los roles que desees o actualizar todas las asignaciones si ingresas el caracter asterisco (*).
Tambien puedes activar una comparacion de registros maestros de usuarios periodicamente si seleccionas Utilities --> Mass Comparison. Selecciona la opcion Schedule o Check job for full reconcilition. El sistema luego muestra una ventana de busqueda para el job de background PFCG_TIME_DEPENDENCY. Si no encuentra el job, tenemos la opcion de crear uno. El valor por defecto es que todos los registros maestros de usuarios seran comparados una vez por dia.
 
 
 
Sobre el autor
Publicación académica de Meyer Macabeo, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Meyer Macabeo
Profesión: Consultor Sap Basis - Mexico - Legajo: BE53Z
✒️Autor de: 65 Publicaciones Académicas
🎓Cursando Actualmente: Consultor BASIS Nivel Avanzado
🎓Egresado del módulo:
Certificación Académica de Meyer Macabeo