Si su organización ha ejecutado un sistema SAP durante al menos tres años, probablemente padece lo que nos gusta llamar el «Síndrome de las funciones de autorización engañosa».
Tanto si está familiarizado con este molesto problema como si no, debe saber que es prácticamente inevitable. Mantener las funciones de autorización durante varios años, añadir y eliminar actividades y objetos de autorización, crear nuevos y eliminar otros, etc. acaban dando lugar a funciones de autorización cuyos nombres no representan fielmente su contenido. Esto tiene el inconveniente de que los administradores de SAP, involuntariamente, pueden otorgar a los usuarios autorizaciones equivocadas.
¿Qué son las funciones de autorización engañosas?
El término «función de autorización engañosa» describe una función de autorización cuyo nombre o descripción describe incorrectamente su contenido.
Esta situación suele estar causada por un error humano, debido fundamentalmente a las dificultades de mantener las funciones de autorización e intentar simplificarlas demasiado. A menudo, la forma más eficaz de resolver un requisito de autorización es añadirlo a una función, sin considerar (o ignorar) que su nombre no refleja la nueva adición.
Algunos ejemplos de funciones de autorización engañosas en SAP:
- las funciones «VIEW» con objetos de autorización que permiten modificar o crear (ACTVT = 01, 02);
- las funciones de autorización descritas como «Financiar – gestionar activos» con códigos T de módulos logísticos tales como MM01.
¿Qué riesgos suponen las funciones de autorización engañosas para su organización?
El riesgo de las funciones de autorización engañosas es bien claro: conceder a los usuarios autorizaciones incorrectas acarrea violaciones masivas de la seguridad.
Veamos un caso en el que la función de autorización HR_VIEW_INFOTYPE_0002 incluye accidentalmente una autorización del tipo «modificación». Por ejemplo, si un usuario necesita una función de autorización para ver la información personal de los empleados, generalmente se le asigna la función HR_VIEW_INFOTYPE_0002. Con esta función se le concede, además, la posibilidad de modificar datos de empleados, lo que da lugar a autorizaciones sensibles innecesarias y la convierte en blanco de los hackers en el futuro.
Además, su organización verá malas caras cuando esta información se descubra durante una auditoría. Tendrá que explicar por qué hay permisos de modificación en las funciones de autorización de solo ver.
¿Puede su organización evitar la creación de funciones de autorización engañosas?
Esta pregunta tiene difícil respuesta. En teoría, su organización puede evitar crear funciones de autorización engañosas si aplica políticas adecuadas e incorpora supervisores al proceso del cambio de funciones de autorización.
Podría pensar que, cuantos más ojos supervisan un cambio antes de que las funciones pasen a producción, esto eliminará la posibilidad de un error. Según nuestra experiencia, esto no previene errores, tan solo alarga el proceso.
A partir de nuestra experiencia, incluso las empresas mejor organizadas acaban teniendo funciones de autorización engañosas en su catálogo de funciones. Es propio de la naturaleza humana cometer errores, especialmente durante el largo ciclo de vida de las funciones de autorización, durante el cual tanto la gente como las políticas cambian. Esto facilita la creación accidental de funciones de autorización engañosas y hacen que sea necesario adoptar medidas periódicas para localizarlas y eliminarlas.
¿Cómo puede su organización manejar eficazmente las funciones de autorización engañosas?
En primer lugar, tendrá que localizarlas; luego deberá ocuparse de ellas una a una. Sorprendentemente, la primera parte es mucho más complicada que la segunda. Una vez encuentre una función de autorización engañosa, ocuparse de ella resultará sencillo, pero encontrarla entre miles o decenas de miles de funciones puede ser como buscar una aguja en un pajar.
Empiece usando las siguientes búsquedas:
- Funciones con nombres que incluyan los términos «VIEW» o «DISPLAY» (en español, «ver» o «mostrar»). Puede hacerlo usando el código T «SUIM» o buscando en la tabla «AGR_DEFINE» el campo «AGR_NAME» mediante el código T «SE16».
- Funciones cuyas descripciones incluyan los términos «VIEW», «DISPLAY» o «DISPLAYING» (en español, «ver» o «mostrar»).
- Funciones con nombres que incluyan los términos «TEMP» y «TIMELY» (en español, «temporal»). Esto es, funciones temporales que, en la mayoría de los casos, no deberían haber llegado al entorno de producción.
Tendrá que ser muy hábil para localizar las funciones de «FINANZAS», que incluyen códigos T de módulos no financieros, y funciones con más del 90 % de códigos T de un módulo y unos pocos códigos T furtivos de otro módulo.
Para este tipo de consultas, necesita una herramienta de software como ProfileTailor Dynamics, capaz de examinar cada función y llevar a cabo una evaluación pormenorizada. Haga clic aquí para una demostración gratuita.
Además, si su empresa incluye objetos de organización en el nombre de la función —por ejemplo, añadir el código de la sociedad a los nombres de funciones derivadas, como Z_MM_PURCHASING_1100 para la sociedad 1100—, ese es otro buen sitio donde buscar. En este caso, también necesitará confiar en una herramienta de software inteligente como ProfileTailor Dynamics.
Qué hacer con las funciones de autorización engañosas una vez que las encuentre
¿Encontró algunas funciones de autorización engañosas? Ahora tiene que gestionarlas una a una. Es una tarea fácil en la mayoría de los casos; sin embargo, requiere algunas consideraciones.
Si la función tiene «DISPLAY» de nombre, pero incluye capacidades de modificación o creación, debe examinar cuidadosamente las cuentas de usuario adjuntas y determinar qué funciones necesita cada cuenta. Si ninguna cuenta necesita esas capacidades adicionales, puede eliminarlas de la función de autorización. Por otro lado, si algunos usuarios necesitan esas capacidades añadidas, puede moverlas a otras funciones. Tome la decisión que tome, intente no dejar el nombre engañoso de «DISPLAY» en una función de autorización que incluya otras acciones.
Si una función está marcada como «HR» o «RRHH» e incluye códigos T financieros, debería separarla en dos funciones diferentes o añadir usuarios con la función de autorización de finanzas más apropiada. No olvide eliminar los códigos T financieros de la función HR. Para seleccionar la mejor opción, también puede emplear «Role Replacer» (reemplazar funciones) en ProfileTailor Dynamics.