![[z/OS]](../images/ngzos.gif)
La identidad J2EE (Java Platform, Enterprise Edition) y una identidad de hebra de sistema operativo
Un usuario se identifica utilizando una identidad que se debe autenticar en WebSphere Application Server para poder acceder a una aplicación de WebSphere Application Server en un entorno seguro.
- Identidades de usuario
- Identidad de Java EE
- La identidad de usuario autenticada por WebSphere que se utiliza en las decisiones de control de acceso que toma WebSphere Application Server en el tiempo de ejecución Java Platform, Enterprise Edition (Java EE). Por ejemplo, la identidad de usuario asociada con una solicitud de aplicación Java EE que se utiliza en las decisiones de control de acceso de los permisos de método EJB.
- Identidad de sistema operativo (OS)
- La identidad de usuario autenticada por el sistema operativo subyacente que se utiliza en las decisiones de control de acceso que toma el OS y los subsistemas. Por ejemplo, la identidad de usuario asociada con un sirviente de WebSphere Application Server para z/OS por el recurso de clase SAF STARTED que utiliza el sistema de archivos en las decisiones de control de acceso cuando el servidor intenta acceder a los archivos.
- Identidad de hebra
- Identidad de hebra de Java
- La identidad Java EE asociada actualmente con una hebra Java gestionada por el tiempo de ejecución de WebSphere Java EE (una hebra Java es la representación Java Virtual Machine (JVM) de una hebra). La identidad de hebra Java se asocia con una hebra de sistema operativo (OS), pero la JVM gestiona la identidad de usuario en la representación Java de la hebra (independiente de la identidad de usuario que gestiona el sistema operativo en la hebra de sistema operativo). La identidad Java EE es actual en la hebra Java el tiempo que dura la solicitud de aplicación
- Identidad de hebra de OS
- La identidad del sistema operativo asociada actualmente con la hebra de sistema operativo. Normalmente, la identidad de hebra de OS es la identidad de usuario que se asigna al sirviente y no suele coincidir con la identidad de hebra Java. Tenga en cuenta que Java EE mantiene una identidad Java EE que se corresponde con la identidad de hebra de OS asignada al sirviente. Esta identidad Java EE se puede utilizar como identidad RunAs.
- Identidad RunAs
- La identidad Java EE elegida como identidad de hebra Java para una determinada
solicitud de aplicación Java EE (basada en la política de descriptor de despliegue RunAs
en un EJB (Enterprise JavaBeans) invocado dentro de una solicitud de aplicación Java EE). Normalmente, la
identidad Java EE es la identidad del usuario autenticado que ha realizado la solicitud
de aplicación Java EE. La política RunAs de WebSphere Application Server ofrece tres
opciones para asignar la identidad de hebra Java de la solicitud actual:
- Asignar la identidad Java EE del cliente (por ejemplo, el usuario). Esta opción también se conoce como seleccionar el RunAs del interlocutor
- Asignar la identidad Java EE del servidor
- Asignar la identidad Java EE que hay en el rol especificado
Cuando la seguridad está habilitada, cada solicitud de WebSphere Application Server para z/OS que invoca un componente Java EE se autentica para garantizar que un usuario autorizado está solicitando acceso. El usuario se representa con una identidad Java EE (también conocida como sujeto JAAS). Esta identidad Java EE contiene uno o varios principales, y cada principal se corresponde con una identidad de usuario específica. WebSphere Application Server gestiona esta asociación. La identidad Java EE y la identidad de hebra de sistema operativo se asocian porque tienen el mismo nombre y representan al mismo usuario.
WebSphere Application Server para z/OS asigna solicitudes de componente en uno de sus procesos de sirviente disponibles. Dentro del proceso de sirviente, la solicitud de componente se asigna en una hebra Java. A continuación, la JVM correlaciona internamente la hebra Java con un bloque de control de hebras (TCB) de z/OS. El TCB es una hebra de sistema operativo y se considera parte de la infraestructura de procesos nativa. Un proceso de servant tiene asignada una identidad de OS cuando se inicia. La política de seguridad de z/OS utiliza el recurso de clase SAF STARTED para asignar la identidad.
Las decisiones de autorización Java EE (incluidas la autorización de roles y la comprobación de permisos) se determinan utilizando la identidad Java EE. Mediante un valor de configuración, la comprobación de autorizaciones de roles se puede delegar al gestor de seguridad del sistema operativo subyacente (por ejemplo, a SAF (System Authorization Facility)), en cuyo caso se utiliza la identidad de OS asociada en la decisión de autorización de roles.
Algunos gestores de recursos en z/OS utilizan la identidad de hebra de OS para tomar decisiones de autorización. Por ejemplo, el control de acceso del sistema de archivos viene determinado completamente por la identidad de hebra de OS que hay actualmente en el TCB cuando se accede al archivo. De forma parecida, las conexiones JDBC (Java Database Connectivity) locales con DB2 para z/OS utilizan la identidad de hebra de OS de TCB como la identidad de autorización en determinadas configuraciones. Para los gestores de recursos que utilizan la identidad de hebra de OS como DB2 para z/OS (y a diferencia del sistema de archivos) a los que acceden las aplicaciones a través de conectores Java Message Service (JMS), JDBC, o Java EE Connector Architecture (JCA) gestionados por la gestión de conexiones de WebSphere Application Server para z/OS, se dice que los conectores a estos gestores de recursos z/OS utilizan la seguridad de hebras de sistema operativo.