![[z/OS]](../images/ngzos.gif)
Identidad de hebra Java y una identidad de hebra de sistema operativo
Puede especificar opciones para sincronizar una identidad de hebra Java™ y una identidad de hebra de sistema operativo.
Los Enterprise JavaBeans (EJB) dan soporte a una especificación de rol RunAs a nivel de método que asocia un rol Java Platform, Enterprise Edition (Java EE) con una invocación de método EJB. El método EJB se ejecuta utilizando la autorización correspondiente al rol de seguridad designado. La autorización se correlaciona con el rol designado utilizando una identidad de usuario. Normalmente, el tiempo de ejecución de Java EE y basado en web reconoce esta identidad y la asocia con la hebra de asignación actual. Esta identidad controla el acceso a aquellos recursos y servicios sujetos a la seguridad Java EE. La identidad de hebra de OS real no se ve afectada por la selección de rol RunAs de EJB y normalmente es la identidad del servidor.
Si se establece la hebra de identidad de OS, se sincroniza la identidad de rol de Java EE y la hebra de OS (SyncToOSThread). Esto significa que la identidad de hebra del sistema operativo se asocia con la identidad de rol de Java EE durante la invocación del método EJB (los ensambladores y desplegadores de aplicaciones asocian la identidad RunAs con la hebra de sistema operativo estableciendo la identidad de hebra en la identidad RunAs para métodos de bean específicos). Esta asociación significa que se utiliza la identidad del rol de seguridad o el interlocutor (no la identidad de la región de servidor) para las solicitudes de servicio del sistema z/OS, por ejemplo, para acceder a los sistemas de gestión de bases de datos y archivos. El servidor Java EE de WebSphere Application Server for z/OS se puede configurar para habilitar o inhabilitar esta asociación (o sincronización). El valor predeterminado inhabilita la posibilidad de modificar la identidad en la hebra de sistema operativo, independientemente de la identidad de hebra de OS en el valor de identidad RunAs del descriptor de despliegue de la aplicación instalada. Si el programa instalador de aplicaciones no permite la sincronización, cualquier método que establezca la identidad RunAs en la hebra de sistema operativo fallará con un error no_permission.
Para completar la especificación de opciones para sincronizar una identidad de hebra Java y una identidad de hebra del sistema operativo, utilice RACF (Resource Access Control Facility) para definir perfiles de la clase FACILITY y opcionalmente de la clase SURROGAT para permitir la sincronización con la hebra de sistema operativo. Esto permite al administrador RACF de la configuración WebSphere Application Server controlar los permisos que permiten la sincronización de la identidad de rol Java EE y la hebra OS (SyncToOSThread).
- Habilitar la sincronización de identidad de hebra de WebSphere Application Server y z/OS
- Especifica si está permitido un SynchToOSThread de la aplicación. Cuando se selecciona esta opción de seguridad (se especifica true), se utiliza la opción SyncToOSThread especificada por la aplicación y es ejecutada posteriormente por los contenedores web y EJB de acuerdo con las especificaciones SyncToOSThread de la aplicación web y EJB. El valor predeterminado es false o estar inhabilitado.
- Habilitar la identidad de hebra RunAs del gestor de conexiones
- Especifica si el gestor de conexiones sincroniza el principal Java EE actual con la hebra de OS cuando se obtiene una conexión de una referencia de recurso que especifica res-auth=container. El valor por omisión es false o inhabilitado.
- True, que especifica que la identidad o el principal de Java EE se debe sincronizar con la hebra de sistema operativo para todas las solicitudes que se invocan en la aplicación web o EJB.
- False, que especifica que la identidad o aplicación del principal de Java EE no se debe sincronizar con la hebra de sistema operativo para todas las solicitudes invocadas en la aplicación web o EJB. Este valor es el predeterminado.
- Sistema operativo local
- LDAP
- Personalizado
- El valor inicial cuando se establece el primer método
- De forma predeterminada, cuando se invocan métodos de servicio de servlets y métodos de empresa EJB se ejecutan de forma implícita como interlocutores (RunAsCaller) salvo que el campo Ejecutar como del atributo de una política especifique lo contrario. Las aplicaciones cliente EJB siempre se ejecutan como el servidor
(RunAsServer). Nota: Para las aplicaciones web, si no se especifica ninguna restricción de seguridad, la aplicación se puede ejecutar con un ID de usuario no autenticado.
- Cambios de delegación de método en la identidad Java EE (se ha especificado RunAs)
- El gestor de conexiones sincroniza la identidad Java EE actual con la hebra de OS cuando se obtienen aplicaciones a partir de las referencias de recursos que tienen autorización de recursos gestionada por contenedor (res-auth=container). Los métodos EJB marcados con SynchToOSThread hacen que la identidad de rol de Java EE se sincronice con la identidad de OS.
- WSSubject.doAs()
- Este valor ofrece flexibilidad cuando se asocia el sujeto con las llamadas remotas en una hebra sin necesidad de ejecutar un WSSubject.doAs() para asociar el sujeto con la acción remota.
- Compilación JSP (JavaServer Pages)
- La compilación JSP de contenedor Web modifica la identidad del servidor si SyncToOSThread está habilitado para el servidor (security_EnableSyncToOSThread=1).
- Acceso de almacenamiento de copia de seguridad con estado
- La activación de sesiones con estado de contenedor de EJB modifica la identidad del servidor si SyncToOSThread está habilitado. Utilice siempre la identidad de servidor para acceder al almacenamiento de copia de seguridad de sesiones con estado de EJB.
- Recarga de aplicación Web
- Cuando el contenedor web recarga la aplicación web, cambia la identidad del servidor si SyncToOSThread está habilitado para las aplicaciones web.
- Solicitudes del gestor de conexiones
- Cuando la referencia de recursos especifica res-auth=application, la identidad de hebra se establece temporalmente en la identidad del servidor.