Objeto S_PROGRAM en ROL

Hola a todos.
Estoy revisando un ROL que tiene el objeto S_PROGRAM con el campo P_GROUP = *, según he revisado al tener el objeto S_PROGRAM con * permite que se ejecute programas mediante la transacción SE38. Mi pregunta es que valor debe de tener o como poder encontrar el valor actual que tiene mediante un trace por la transacción ST01.
Gracias de antemano.

Jimmy.

encontrar un valor no podrás, ya que permite ejecutar todos los grupos de programa. si haces un trace te detectará lo que ejecutaste.

¿Qué valor debe tener? el que definan en tu empresa. si definen que no se debe tener ese valor amplio en productivo ningún rol lo debiera tener.

1 me gusta

@jmore21
La verdad ese objeto no siempre se utiliza bien porque al abaper y a la persona de seguridad se le olvida y siempre opta por asignar el campo P_GROUP = *.
Para hacer uso del campo de manera correcta, se debería crear un grupo de autorización y ese grupo de autorización se debe asociar al programa en la SE38.
Los grupos de autorización los puedes ver en la tabla TPGP.

Hacer un trace para ver el valor de un campo que casi nadie usa, seria un castigo.

1 me gusta

Muchas gracias @Inkognit4, pero como puedo evidenciar de que ese valor no se ha asignado correctamente. A la espera de tu gentil respuesta.

Puedes usar la transacción SUIM. hacer una búsqueda por aquellos roles y/o usuarios que tengan el objeto de autorización S_PROGRAM con el campo P_GROUP=*.

Ya tengo identificado los roles que tiene el objeto S_PROGRAM y las transacciones a las que se está aplicando, mi pregunta es como evidenciar de manera funcional que se ha asignado el valor * y por ende no es el correcto.

Lo de correcto es relativo. Puedes o no asignar de manera discreta el grupo de autorización. Eso depende de los criterios que usaron en el momento de definir el modelo de seguridad.
Si el * no fuera un valor permitido no se podría asignar.
Si lo que quieres es apuntalar que se debe asignar el grupo de autorización para ese objeto, es simplemente una buena practica ya que se limitaría la ejecución de cierto programas a determinados grupos autorizados.
Te pregunto existe algún motivo por la cual reforzar la seguridad usando este campo? Toma en cuenta que a medida que pones mas valores, sobre todo mas valores que no aportan al modelo de seguridad, puedes hacer que aumente el esfuerzo del equipo de seguridad en temas de gestión de los roles.

1 me gusta

En producción los roles identificados tienen el objeto S_PROGRAM con el valor *, por ello quiero evidenciar el riesgo de utilizar el valor *. Gracias de antemano.

Como te comente el objetivo de objeto es simplemente se agrupar los programas en estos grupos, y a su vez. son asignarlos a este objeto. Ademas si el usuario no tiene acceso a la SE38 o SA38 no podría ejecutar un programa directamente.
Este objeto esta mas orientado a reforzar, a evitar que un usuario pueda hacer uso de algún programa, ya que entre el grupo de autorización que se le asocia al programa y el que tiene el usuario mediante el rol, limita la ejecución del mismo. Lo que si seria recomendable es que aquellos reportes y programas críticos para el negocio sean asignados de manera adecuada a los usuarios correspondientes.

@Inkognit4 cuando presiono F1 en el nombre técnico S_PROGRAM cuando estoy dentro del rol, sap me brinda esta documentación:

Ejemplo
Esta autorización permite al usuario ejecutar programas del grupo de autorizaciones MMDLMAT.

Campo              Valor 
Programa ABAP/4: grupo de autorizaciones MMDLMAT 
Programa ABAP/4: acción de usuario         SUBMIT 

Por mi parte he estado buscando este obj de utorización MMDLMAT si es que algún programa estándar lo tiene asignado para poder ver de que se trata. ¿Tiene algún conocimiento de ello? Gracias de antemano.

@jmore21, tienes un error de concepto. El Objeto de autorizacion es el S_PROGRAM y los campos de ese objeto son:
P_Group → Grupo de autorizacion
P_Action → Accion de usuario

Como lo indique anteriormente

El valor MMDLMAT es un grupo de autorización.

Te recomiendo que te apoyes con tu equipo de seguridad para que te aclaren los conceptos básicos de objetos de autorización, autorizaciones y manejo de los campos de los objetos de autorización.

1 me gusta

tienen que definir que permitir a través de ese grupo de autorización y en base a eso configurar un rol, como indique en el post 2.

cuando digo que permitir me refiero a que la ejecución de programas se controla a través de grupos de autorizaciones, por esto que el valor * permite ejecutar cualquier programa, siempre y cuando tenga acceso a se38 y sa38.

te recomiendo 1º ver los permisos de los usuarios que estén ejecutando jobs de fondo, ver los programas que ejecutan con sus grupos de autorización y solo esos permitir inicialmente, si alguien le falta autorización para algo ahí vas controlando si debe o no para agregarlo en el permiso.

1 me gusta

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.