< Anterior | Siguiente >

Lección 2.2: Configurar seguridad del servidor de catálogo

Un servidor de catálogo contiene dos niveles distintos de información de seguridad. El primer nivel contiene las propiedades de seguridad que son comunes a todos los servidores WebSphere eXtreme Scale, incluido el servicio de catálogo y los servidores de contenedor. El segundo nivel contiene las propiedades de seguridad que son específicas del servidor de catálogo.

Las propiedades de seguridad comunes a los servidores de catálogo y los servidores de contenedor se configuran en el archivo de descriptor XML de seguridad. Un archivo de propiedades comunes es la configuración de autenticador, que representa el registro de usuarios y el mecanismo de autenticación. Consulte Archivo XML de descriptor de seguridad para obtener más información sobre las propiedades de seguridad.

Para configurar un archivo de descriptor XML de seguridad en un entorno Java SE, utilice la opción -clusterSecurityFile al ejecutar el mandato startOgServer. Especifique un valor con formato de archivo como, por ejemplo, inicio_samples/security_extauth/security3.xml.

Archivo security3.xml

En esta guía de aprendizaje, el archivo security3.xml está en el directorio inicio_samples/security_extauth. A continuación se muestra el contenido del archivo security3.xml con los comentarios eliminados:
<securityConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://ibm.com/ws/objectgrid/config/security ../objectGridSecurity.xsd"
	xmlns="http://ibm.com/ws/objectgrid/config/security">

	<security securityEnabled="true">
		<authenticator
	className="com.ibm.websphere.objectgrid.security.plugins.builtins.KeyStoreLoginAuthenticator">
		</authenticator>
	</security>
</securityConfig>
Se definen las propiedades siguientes en el archivo security3.xml:
securityEnabled
La propiedad securityEnabled se establece en true, lo que indica al servidor de catálogo que la seguridad global de WebSphere eXtreme Scale está habilitada.
authenticator
El autenticador se configura como la clase com.ibm.websphere.objectgrid.security.plugins.builtins.KeyStoreLoginAuthenticator. Con esta implementación incorporada del plug-in Authenticator, se proporciona el ID de usuario y la contraseña para verificar que está configurada en el archivo del almacén de claves. La clase KeyStoreLoginAuthenticator utiliza el alias de módulo de inicio de sesión KeyStoreLogin, así que se requiere una configuración de inicio de sesión JAAS (Java Authentication and Authorization Service).

Archivo catServer3.props

El archivo de propiedades del servidor almacena las propiedades específicas del servidor, que incluyen las propiedades de seguridad específicas del servidor. Consulte Archivo de propiedades de servidor para obtener más información. Puede utilizar la opción -serverProps para especificar la propiedad del servidor de catálogo al ejecutar el mandato startOgServer. Para esta guía de aprendizaje, se incluye un archivo catServer3.props en el directorio c. A continuación se muestra el contenido del archivo catServer3.props con los comentarios eliminados:
securityEnabled=true
credentialAuthentication=Required
transportType=TCP/IP
secureTokenManagerType=none
authenticationSecret=ObjectGridDefaultSecret
securityEnabled
La propiedad securityEnabled se establece en true para indicar que este servidor de catálogo es un servidor seguro.
credentialAuthentication
La propiedad credentialAuthentication se establece en Required, de forma que cualquier cliente que se conecte al servidor necesitará proporcionar una credencial. En el archivo de propiedades del cliente, el valor credentialAuthentication se establece en Supported, de forma que el servidor recibe las credenciales que envía el cliente.
secureTokenManagerType
La propiedad secureTokenManagerType se establece en none para indicar que el secreto de autenticación no está cifrado al unirse a los servidores existentes.
authenticationSecret
La propiedad authenticationSecret se establece en ObjectGridDefaultSecret. Esta serie secreta se utiliza para la unión al clúster de servidores eXtreme Scale. Cuando un servidor se une a la cuadrícula de datos, se solicita que proporcione la serie secreta. Si la serie secreta del servidor que se une coincide con la serie en el servidor de catálogo, se aceptará el servidor que se desea unir. Si la serie no coincide, se rechaza la solicitud de unión.
transportType
La propiedad transportType se establece inicialmente en TCP/IP. Más adelante en la guía de aprendizaje, la seguridad de transporte se habilitará.

Archivo xsjaas3.config

Puesto que la implementación KeyStoreLoginAuthenticator utiliza un módulo de inicio de sesión, debe configurar el modelo de inicio de sesión con un archivo de configuración de inicio de sesión de autenticación JAAS. A continuación se muestra el contenido del archivo xsjaas3.config:

KeyStoreLogin{
com.ibm.websphere.objectgrid.security.plugins.builtins.KeyStoreLoginModule required
     keyStoreFile="inicio_samples/security_extauth/sampleKS3.jks" debug = true;
};
Si ha utilizado una ubicación para inicio_samples distinta a /wxs_samples/, debe actualizar la ubicación de keyStoreFile. Esta configuración de inicio de sesión indica que el módulo com.ibm.websphere.objectgrid.security.plugins.builtins.KeyStoreLoginModule se utiliza como el módulo de inicio de sesión. El archivo del almacén de claves se establece en el archivo sampleKS3.jks.

El archivo de almacén de claves de ejemplo sampleKS3.jks almacena dos ID de usuario y las contraseñas: manager/manager1 y cashier/cashier1.

Puede utilizar los siguientes mandatos keytool para crear este almacén de claves:
  • keytool -genkey -v -keystore ./sampleKS3.jks -storepass sampleKS1 
    -alias manager -keypass manager1 -dname CN=manager,O=acme,OU=OGSample 
    -validity 10000
  • keytool -genkey -v -keystore ./sampleKS3.jks -storepass sampleKS1 
    -alias operator -keypass operator1 -dname CN=operator,O=acme,OU=OGSample 
    -validity 10000

Iniciar el servidor de catálogo con la seguridad habilitada

Para iniciar el servidor de catálogo, emita el mandato startOgServer con los parámetros -clusterFile y -serverProps para proporcionar las propiedades de seguridad.

Utilice una instalación autónoma de WebSphere eXtreme Scale para ejecutar el servidor de catálogo. Cuando utilice la imagen de instalación autónoma, debe utilizar el SDK de IBM. Puede utilizar el SDK que se incluye con WebSphere Application Server estableciendo la variable JAVA_HOME para que apunte al SDK de IBM. Por ejemplo, set JAVA_HOME=raíz_was/IBM/WebSphere/AppServer/java/
  1. Vaya al directorio bin.
    cd inicio_wxs/bin
  2. Ejecute el mandato startOgServer.
    [Linux][Unix]
    ./startOgServer.sh cs1 -listenerPort 16809 -JMXServicePort 16099 -catalogServiceEndPoints
    cs1:[HOST_NAME]:16601:16602 -clusterSecurityFile inicio_samples/security_extauth/security3.xml
    -serverProps inicio_samples/security_extauth/catServer3.props -jvmArgs 
    -Djava.security.auth.login.config="inicio_samples/security_extauth/xsjaas3.config"
    [Windows]
    startOgServer.bat cs1 -listenerPort 16809 -JMXServicePort 16099 -catalogServiceEndPoints
    cs1:[HOST_NAME]:16601:16602 -clusterSecurityFile inicio_samples/security_extauth/security3.xml
    -serverProps inicio_samples/security_extauth/catServer3.props -jvmArgs 
    -Djava.security.auth.login.config="inicio_samples/security_extauth/xsjaas3.config"
Después de ejecutar el mandato startOgServer, se inicia un servidor seguro con el puerto de escucha 16809, el puerto de cliente 16601, el puerto de igual 16602 y el puerto JMX 16099. Si existe un conflicto de puertos, cambie el número de puerto a un número de puerto no utilizado.

Detener un servidor de catálogo con la seguridad habilitada

Puede utilizar el mandato stopOgServer para detener el servidor de catálogo.

  1. Vaya al directorio bin.
    cd inicio_wxs/bin
  2. Ejecute el mandato stopOgServer. [Linux][Unix]
    stopOgServer.sh cs1 -catalogServiceEndPoints localhost:16809 -clientSecurityFile 
    inicio_samples/security_extauth/client3.props


    [Windows]
    stopOgServer.bat cs1 -catalogServiceEndPoints localhost:16809 -clientSecurityFile 
    inicio_samples/security_extauth/client3.props

Punto de comprobación de la lección

Ha configurado la seguridad del servidor de catálogo asociando los archivos security3.xml, catServer3.props y xsjaas3.config al servicio de catálogo.

< Anterior | Siguiente >