![[z/OS]](../images/ngzos.gif)
System Authorization Facility para autorización basada en roles
Para la asignación de roles, tiene tres opciones: (1) Autorización de WebSphere Application Server, en la que la gestión de autorización se realiza dentro de la administración de WebSphere mediante el panel Rol de seguridad para correlación de usuario/grupo de la consola administrativa. (2) System Authorization Facility (SAF) para la autorización basada en roles (sólo la opción WebSphere Authorization Facility para z/OS), que utiliza la autorización SAF para los roles de J2EE (Java 2 Platform Enterprise Edition). (3) Proveedor de autorización externo que utiliza interfaces JACC conectables. Cuando se configura WebSphere Application Server para utilizar la autorización SAF, la gestión de autorizaciones se realiza utilizando los recursos de gestión de SAF y se omite el usuario o el grupo de la gestión de roles J2EE de la administración WebSphere. La clase SAF de EJBROLE se utiliza (por ejemplo, mediante el perfil EJBROLE de RACF) para controlar el acceso de un cliente a los roles de Java™ 2 Platform, Enterprise Edition (J2EE) en EJB y aplicaciones web, incluida la aplicación de la consola administrativa de WebSphere Application Server.
- Si se selecciona la autorización SAF en la consola administrativa, altera temporalmente las otras opciones de autorización (por ejemplo, la autorización de Tivoli Access Manager). Para obtener más información, consulte el apartado Resumen de controles.
- Cuando se habilita la autorización SAF, la autorización de cualquier nivel se realiza siempre mediante el gestor de seguridad del sistema operativo (RACF o un producto equivalente). Es decir, los usuarios se deben autenticar con un ID de usuario del gestor de seguridad (RACF), o bien se debe utilizar un módulo de correlación SAF. Para obtener más información, consulte el apartado Consideraciones de SAF (System Authorization Facility) para los niveles de sistema operativo y aplicación.
- Cuando se selecciona la autorización SAF durante la personalización de sistemas, los perfiles EJBROLE administrativos de todos los roles administrativos se definen mediante los trabajos RACF generados utilizando los diálogos de personalización, y la autorización SAF se puede utilizar como mecanismo de autorización para todos los registros de usuarios. Para obtener más información, consulte el apartado Control de acceso a los usuarios de la consola cuando se utiliza el registro de LocalOS.
- Cuando se configura la propiedad SAF, la propiedad com.ibm.security.SAF.authorization se establece en true y los perfiles EJBROLE de SAF se utilizan para controlar el acceso a los roles administrativos. Consulte el apartado Autorización del acceso a roles administrativos para obtener más información sobre cómo autorizar el acceso a los roles administrativos.
- Cuando la autorización SAF esté habilitada, todos los valores de los usuarios de la consola y los grupos de la consola se omitirán. Se omite el panel funcional Correlacionar roles de seguridad con usuarios y grupos de la consola administrativa. Para obtener más información, consulte el apartado Roles administrativos y autorización de servicios de nombres.
- Todos y Todos los usuarios autenticados se omiten, dado que se gestionan con RACF. Para obtener más información, consulte Consideraciones de SAF (System Authorization Facility) para los niveles de sistema operativo y aplicación y Correlación de roles de seguridad y usuarios o grupos.
- Cuando se habilita la autorización SAF, se utilizan los perfiles EJBROLE de SAF para controlar el acceso a las funciones de CosNaming. Durante la configuración del dominio de seguridad en el diálogo de personalización, los roles CosNaming se definen mediante trabajos de personalización. Consulte el apartado Consideraciones especiales sobre el control del acceso a roles de nombres mediante la autorización SAF para obtener más información sobre las funciones CosNaming y la autorización SAF, además de consultar Roles administrativos y autorización de servicios de nombres.
- Cuando se habilita la autorización SAF, se utilizan los perfiles EJBROLE de SAF para autorizar los roles J2EE. Para los registros de sistemas operativos que no son locales, deben existir correlaciones de identidades para correlacionar las identidades de WebSphere Application Server con las identidades de SAF. Consulte la sección Control de acceso a los usuarios de la consola cuando se utiliza el registro de LocalOS para obtener más información.
- La autorización SAF para roles J2EE es una tarea independiente del proceso de despliegue de aplicaciones. Para obtener más información, consulte el apartado Asignación de usuarios y grupos a roles.
- La clase EJBROLE de ser RACLISTed. Si la clase EJBROLE no es RACLISTed, debe reiniciar el servidor de aplicaciones para recoger los cambios realizados en los perfiles de la clase EJBROLE.
- La especificación Servlet 3.1 acaba de definir el nombre de rol **, que otorga acceso para todos los usuarios autenticados. De forma predeterminada, el SAF toma la decisión de autorización.
- La propiedad personalizada com.ibm.websphere.security.delegateStarStarRoleAuthorization define si el código de seguridad otorga acceso a todos los usuarios autenticados cuando el nombre de rol es **.
- true: el código de seguridad otorga acceso sin interactuar con la tabla de autorizaciones conectable.
- false: el código de seguridad delega la decisión a la tabla de autorizaciones conectable. Éste es el valor predeterminado.

Cuando se habilita la autorización SAF, se utilizan los perfiles EJBROLE de SAF para autorizar los roles Java EE. Para los registros de sistemas operativos que no son locales, deben existir correlaciones de identidades para correlacionar las identidades de WebSphere Application Server con las identidades de SAF.
Para habilitar la autorización SAF, consulte Autorización SAF (System Authorization Facility) de z/OS para obtener más información.
La definición de EJBROLES pertenece al proceso de despliegue de aplicaciones. Si el ID de usuario tiene al menos acceso READ en el perfil EJBROLE definido correspondiente al rol de Java EE definido por la aplicación, el ID de usuario se considera que está en el Rol. (No se debe confundir con el nombre EJBROLE. Se utiliza para los roles de Java EE en las aplicaciones EJB y Web).
Cuando un desplegador de aplicaciones utiliza un rol en el descriptor de despliegue de un componente, el nombre del rol debe ser idéntico al nombre de un perfil EJBROLE. Un administrador de seguridad define perfiles EJBROLE y otorga permisos a los usuarios o grupos SAF a los perfiles. Para considerarse candidato para un rol, un usuario debe tener acceso de lectura en el perfil EJBROLE o debe estar conectado a un grupo SAF que tenga acceso de lectura.
La especificación de un prefijo de perfil SAF (anteriormente referido como dominio de seguridad de z/OS) afecta a los perfiles EJBROLE específicos que utilizan los recursos del sistema de WebSphere Application Server for z/OS cuando se elige la autorización SAF. Cuando se define un prefijo SAF, se coloca un prefijo para los perfiles EJBROLE de la aplicaciónJava EE para el tiempo de ejecución de WebSphere Application Server for z/OS con el valor de esta propiedad. Esto permite desplegar la misma aplicación en varias células del mismo sysplex y tener varias correlaciones de usuarios con roles, si lo desea.
Por ejemplo, la aplicación tiene dos nombres de roles de Java EE: juniorTellers y seniorTellers. Estos roles pueden incluir mayúsculas y minúsculas. En el registro SAF, tiene un grupo MVS denominado JTELLER y STELLER y un ID de usuario de MVS denominado BANKADM. El grupo JTELLER es necesario para acceder al rol juniorTellers, y el grupo STELLER es necesario para acceder al rol seniorTellers. El ID de usuario BANKADM es necesario para acceder a ambos roles.
Tiene dos células definidas para utilizar un prefijo de perfil SAF. Los prefijos son PRODCELL y TESTCELL, respectivamente. El ID de usuario TEST1 debe tener acceso a los dos roles, pero sólo en el entorno de prueba TESTCELL.
Si desea desplegar la misma aplicación en ambas células, debe definir perfiles diferentes utilizando RACF (o un subsistema de seguridad equivalente), tal como se indica a continuación.
/* la clase EJBROLE debe estar activa, este paso se realiza en los diálogos de personalización */ SETROPTS CLASSACT(EJBROLE) /* defina primero los roles en RACF */ RDEFINE EJBROLE PRODCELL.juniorTellers UACC(NONE) RDEFINE EJBROLE PRODCELL.seniorTellers UACC(NONE) RDEFINE EJBROLE TESTCELL.juniorTellers UACC(NONE) RDEFINE EJBROLE TESTCELL.seniorTellers UACC(NONE) /* otorgue permiso a los usuarios y grupos adecuados a los distintos roles */ PERMIT PRODCELL.juniorTellers CLASS(EJBROLE) ID(JTELLER BANKADM) ACCESS(READ) PERMIT PRODCELL.seniorTellers CLASS(EJBROLE) ID(STELLER BANKADM) ACCESS(READ) PERMIT TESTCELL.juniorTellers CLASS(EJBROLE) ID(TEST1) ACCESS(READ) PERMIT TESTCELL.seniorTellers CLASS(EJBROLE) ID(TEST1) ACCESS(READ) /* renueve la clase EJBROLE en RACF * SETROPTS RACLIST(EJBROLE) REFRESH"
Agrupación de EJBROLES (GEJBROLE)
La interfaz SAF también da soporte a una clase de agrupación para la clase EJBROLE. Esta clase de agrupación se denomina GEJBROLE. Es muy útil cuando se necesita dar acceso a los mismos usuarios o grupos para varios roles.
- Ajuste los descriptores de despliegue de las aplicaciones para que cumplan los roles que ya hay definidos en la empresa, por ejemplo, los gestores. Este proceso necesita mucho tiempo y puede inducir a errores, ya que necesitará un reajuste del descriptor de despliegue cada vez que se cambie o se reinstale la aplicación.
- Defina los perfiles EJBROLE de cada uno de los roles que necesita la aplicación. A continuación, permita a los usuarios y grupos que accedan a estos roles. Este proceso podría ampliarse al administrador ya que los mismos usuarios y grupos tienen permisos para parecidos.
- Utilice la clase de agrupación para evitar los principales inconvenientes de las otras dos opciones. También debe definir los perfiles EJBROLE de cada uno de los roles que necesita la aplicación. En lugar de otorgar permiso a todos los usuarios y grupos para utilizar los nuevos perfiles, cree un perfil, por ejemplo, los supervisores, en la clase de agrupación y añádale todos los nuevos perfiles EJBROLE. Puede dar permiso en un lugar a todos los usuarios y grupos que necesiten acceso a estos roles como, por ejemplo, el perfil de supervisor. Puede reducir aún más el trabajo de administración con añadir el perfil EJBROLE existente (Gestores) al perfil de clase de agrupación (Supervisores).
- Planifique los perfiles de los roles de la organización en los GEJBROLE de la clase RACF.
- Cree la lista de acceso otorgando permisos a los usuarios o grupos a los perfiles GEJBROLE y, a continuación, añada roles a los perfiles GEJBROLE.
- Un GEJBROLE con sólo un EJBROLE es correcto.
- No utilice una combinación de EJBROLE y GEJBROLE para otorgar permiso a los usuarios a los roles.
- Si es posible, otorgue permiso a los usuarios sólo a los perfiles GEJBROLE.
- En general, utilice GEJBROLE antes que EJBROLE.