Configuraciones de almacén de claves para SSL

Utilice las configuraciones de almacén de claves para definir cómo el tiempo de ejecución de WebSphere carga y gestiona los tipos de almacén de claves para las configuraciones SSL (Secure Sockets Layer).

De forma predeterminada, el atributo java.security.Security.getAlgorithms("KeyStore") no muestra una lista predefinida de los tipos de almacén de claves en la consola administrativa. En lugar de ello, WebSphere Application Server recupera todos los tipos de almacén de claves a los que el objeto java.security.KeyStore puede hacer referencia, incluyendo almacenes de claves criptográficos de hardware, de plataforma z/OS, de plataforma IBM® i, de IBMJCE (IBM Java™ Cryptography Extension) y de proveedores CMS (Certificate Management Services) basados en Java. Si especifica un proveedor de almacén de claves en el archivo java.security o lo añade a la lista de proveedores de forma programada, WebSphere Application Server también recupera los almacenes de claves personalizados. La lista de recuperación depende de la configuración de java.security para esa plataforma y proceso.

Almacenes de claves basados en el archivo IBMJCE (JCEKS, JKS y PKCS12)

Una configuración de almacén de claves basada en el archivo IBMJCE típica se muestra en el siguiente código de ejemplo:
<keyStores xmi:id="KeyStore_1" name="NodeDefaultKeyStore" 
password="{xor}349dkckdd=" provider="IBMJCE"
location="${USER_INSTALL_ROOT}/config/cells/myhostNode01Cell
/nodes/myhostNode01/key.p12" type="PKCS12" fileBased="true" 
hostList="" initializeAtStartup="true" readOnly="false" 
description="Default key store for myhostNode01" usage="SSLKeys" 
managementScope="ManagementScope_1"/>
Para obtener más información sobre las configuraciones de almacén de claves predeterminadas, consulte Configuración de certificado encadenado predeterminado en SSL.
La tabla 1 describe los atributos que se utilizan en el código de ejemplo.
Tabla 1. Configuraciones de almacén de claves. En esta tabla se describen las configuraciones de almacén de claves.
Nombre de atributo Valor predeterminado Descripción
xmi:id Varía Valor que se emite para hacer referencia al almacén de claves de otra área de la configuración, por ejemplo, de una configuración SSL. Asegúrese de que este valor es exclusivo en el archivo security.xml.
nombre Para el almacén de claves JSSE: CellDefaultKeyStore. Para el almacén de confianza JSSE: CellDefaultTrustStore. Nombre que se utiliza para identificar el almacén de claves visualmente. El nombre puede determinar si el almacén de claves es un almacén de claves por omisión basándose en si el nombre termina por DefaultKeyStore o DefaultTrustStore.
password La contraseña predeterminada del almacén de claves es WebAS. Se recomienda que se cambia tan pronto como sea posible. Para obtener más información, consulte el apartado Actualización de contraseñas de almacén de claves predeterminado utilizando scripts. La contraseña que se utiliza para acceder al nombre de almacén de claves también es el valor predeterminado utilizado para almacenar claves en el almacén de claves.
descripción Sin valor predeterminado Descripción del almacén de claves.
uso Atributo que especifica para qué se utiliza el almacén de claves. Los valores válidos son: SSLKeys, KeySetKeys, RootKeys, DeletedKeys, DefaultSigners, RSATokenKeys.
provider El proveedor por omisión es IBMJCE. Proveedor Java que implementa el atributo type (por ejemplo, el tipo PKCS12). El proveedor puede dejarse sin especificar y se utiliza el primer proveedor que implemente el tipo de almacén de claves especificado.
location El valor predeterminado varía, pero generalmente hace referencia a un archivo key.p12 o trust.p12 de los directorios de nodo o célula del repositorio de configuración. Estos archivos son almacenes de claves de tipo PKCS12. Referencia de la ubicación del almacén de claves. Si el almacén de claves esta basado en un archivo, la ubicación puede hacer referencia a cualquier vía de acceso del sistema de archivos del nodo donde esté ubicado el almacén de claves. No obstante, si la ubicación está fuera del repositorio de configuración y desea gestionar el almacén de claves de forma remota desde la consola administrativa o desde el programa de utilidad wsadamin, especifique el atributo hostList que contiene el nombre de host del nodo donde reside.
type El tipo de almacén de claves predeterminado de dispositivo criptográfico Java es PKCS12. Este tipo especifica el almacén de claves. Los tipos válidos pueden ser los devueltos por el atributo java.security.Security.getAlgorithms("KeyStore"). Estos tipos incluyen los siguientes tipos de almacén de claves y la disponibilidad depende de la configuración de java.security de la plataforma:
  • JKS
  • JCEKS
  • PKCS12
  • PKCS11 (dispositivo criptográfico Java)
  • CMSKS
  • IBMi5OSKeyStore
  • JCERACFKS
  • Almacenes de claves JCECCAKS (sustituyendo a JCE4758KS) - (dispositivo criptográfico de z/OS)
fileBased El valor predeterminado es true. Esta opción es necesaria para los almacenes de claves por omisión. Indica un almacén de claves del sistema de archivos para que pueda utilizar FileInputStream o FileOutputStream para cargar y almacenar el almacén de claves.
hostList El atributo hostList se utiliza para especificar un nombre de host remoto de modo que el almacén de claves pueda gestionarse de forma remota. No existen almacenes de claves gestionados de forma remota por omisión. Todos los almacenes de claves por omisión se gestionan localmente en el repositorio de configuración y se sincronizan con cada uno de los nodos. La opción gestiona un almacén de claves de forma remota. Puede establecer el nombre de host de un nodo válido para un almacén de claves. Cuando se utiliza la consola administrativa o el programa de utilidad wsadmin para gestionar los certificados de este almacén de claves, se realiza una llamada de MBean al nodo donde se encuentra el almacén de claves para obtener la operación aprobada. Puede especificar varios hosts, aunque la sincronización de las operaciones de almacén de claves no está garantizada. Por ejemplo, uno de los hosts enumerados puede estar inactivo cuando se realice una operación específica. Por lo tanto, utilice varios hosts de esta lista.
initializeAtStartup El valor predeterminado es true. Esta opción indica al tiempo de ejecución que debe inicializar el almacén de claves durante el inicio. Esta opción puede ser importante para la aceleración de dispositivos criptográficos de hardware.
readOnly El valor predeterminado es false. Esta opción indica a la configuración que no se puede escribir en este almacén de claves. Es decir, ciertas operaciones del almacén de claves no puede realizarse y no están permitidas. Un ejemplo de tipo de almacén de claves de sólo lectura es JCERACFKS en la plataforma z/OS. Este tipo es de sólo lectura desde el punto de vista de la gestión de certificados de WebSphere, pero puede actualizarlo utilizando el recurso de gestión de almacén de claves para RACF.

[z/OS]Opcionalmente, puede configurar soporte de conjunto de claves grabable que permita configuraciones de almacenes de claves adicionales para que la función de gestión de certificados utilice dicho soporte. Consulte Creación de conjuntos de claves SAF con permisos de escritura y Utilización de conjuntos de claves SAF con permisos de escritura para obtener más información sobre la configuración y el uso de objetos de configuración de almacén de claves con permiso de escritura.

managementScope El ámbito por omisión es el ámbito de nodo para un entorno de servidor de aplicaciones base y el ámbito de célula para un entorno de Network Deployment. Esta opción hace referencia a un determinado ámbito de gestión en el que puede ver este almacén de claves. Por ejemplo, si un dispositivo criptográfico de hardware está ubicado físicamente en un nodo específico, cree el almacén de claves a partir de un enlace con ese nodo de la vista de topología bajo Seguridad > Comunicaciones de seguridad > Configuraciones SSL. Asimismo puede utilizar el ámbito de gestión para aislar una referencia de almacén de claves. En algunos casos, es posible que sólo pueda permitir que un servidor de aplicaciones específico haga referencia al almacén de claves. El ámbito de gestión es para ese servidor específico.
[z/OS]

Almacenes de claves z/OS

WebSphere Application Server da soporte a los almacenes de claves basados en archivos IBMJCE: JCEKS (Java Cryptography Extension Key Stores), JKS (Java Key Stores) y PKCS12 (Public Key Cryptography Standards 12), así como a los almacenes de claves específicos de z/OS. El soporte de almacén de claves basado en archivos IBMJCE en z/OS es completamente compatible con el soporte en la plataforma distribuida y parecido a él.

El proveedor IBMJCECCA amplía y sustituye el proveedor IBMJCE4758 de releases anteriores. Los proveedores IBMJCECCA y de IBMJCE4758 son funcionalmente equivalentes. El proveedor IBMJCECCA da soporte a cuatro almacenes de claves: JCECCAKS (JCE4758KS) y JCECCARACFKS (JCE4758RACFKS).

El almacén de claves JCECCAKS utiliza claves que se almacenan en el hardware de z/OS y que las gestiona ICSF. El almacén de claves JCECCARACFKS maneja certificados gestionados y almacenados en anillos de claves RACF y las claves se almacenan en el hardware de z/OS. Los almacenes de claves JCE4758KS y JCE4758RACFKS se incluyen para disponer de compatibilidad inversa y están en desuso. El almacén de claves JCECCAKS amplía y sustituye el almacén de claves JCE4758KS. El almacén de claves JCECCARACFKS amplía y sustituye el almacén de claves JCE4758RACFKS.

La plataforma z/OS ofrece tres tipos de almacén de claves que pueden utilizarse para WebSphere Application Server en z/OS:
  • Los almacenes de claves JCECCAKS (que sustituyen a JCE4758KS) utilizan claves que se almacenan en el hardware de z/OS y claves que se gestionan en ICSF.
  • Los almacenes de claves JCERACFKS están basados en RACF (Resource Access Control Facility) y se utilizan para dar soporte a las claves y certificados contenidos en un almacén de claves RACF. El material de claves almacenado en ICSF no está soportado con este tipo de almacén de claves.
  • Los almacenes de claves JCECCARACFKS (que amplían y sustituyen a JCE4758RACFKS) están basados en RACF y se utilizan para dar soporte a los certificados contenidos en un almacén de claves RACF junto con las claves almacenadas en hardware de z/OS. Debe especificarse la opción ICSF con RACF RACDCERT.
Notas:
  • El tipo de almacén de claves, JCERACFKS para el proveedor IBMJCE y JCECCARACFKS para el proveedor IBMJCECCA, sólo está disponible en la plataforma z/OS en que SAF está disponible.
  • Puede utilizar la consola administrativa para extraer un certificado personal en HFS como un tipo de datos ASCII codificado en Base64 o como un tipo de datos binario DER. No obstante, si el tipo de almacén de claves de la configuración de SSL es JCERACFKS, se crea un archivo de 0 en HFS.
  • Para que sea compatible con el almacén de claves JCE en la solicitud de una contraseña, JCERACFKS requiere una contraseña pero esa contraseña debe ser password. La seguridad de este almacén de claves no se protege realmente mediante una contraseña, como ocurre con otros tipos de almacenes de claves, sino que se basa en la identidad de la hebra de ejecución para la protección con RACF. Esta contraseña es para el archivo de almacén de claves que ha especificado en el campo Vía de acceso.

Un proveedor IBMJCE sólo puede dar soporte al almacén de claves JCERACFKS que aparece en el conjunto de almacenes de claves específicos de z/OS enumerados anteriormente. El proveedor IBMJCE no puede utilizar el material de los almacenes de claves JCECCAKS o JCECCARACFKS, ya que no es específico del hardware.

Un proveedor IBMJCECCA puede dar soporte a los materiales de claves de software para los almacenes de claves JCERACFKS, JKS y JCEKS y aprovecharse de la aceleración de hardware.

Una nueva clase de almacén de claves, JceRACFKeyStore, se ha añadido a los proveedores IBMJCE y IBMJCECCA. Utilice esta clase cuando recupere los certificados y claves de un conjunto de claves ya que este almacén de claves permite que WebSphere Application Server lea un conjunto de claves. No obstante, si el servidor intenta escribir datos en el conjunto de claves, se genera una excepción IOException. Mientras que RACFInputStream funciona con cualquier almacén de claves, es posible que los datos almacenados en RACF puedan escribirse accidentalmente en un archivo HFS (sistema jerárquico de archivos) si el servidor utiliza un almacén de claves distinto de la clase JceRACFKeyStore.

RACFInputStream puede acceder a la claves y certificados que se almacenan en una implementación de conjunto de claves SAF (System Authorization Facility) utilizando los métodos siguientes:
  • Utilice RACFInputStream para pasar directamente una instancia recién creada a la clase JceRACFKeyStore
  • Utilice URLStreamHandler para llamar a RACFInputStream y, a continuación, pase la instancia a la clase JceRACFKeyStore
Para obtener más información, consulte Configuración de conjuntos de claves.

Todos los servicios RACF de JAVA, incluidos JceRACFKeyStore y RACFInputStream, utilizan el servicio R_datalib (IRRSDL00) para recuperar certificados de RACF. No obstante, para utilizar este servicio, debe obtener la autorización para R_datalib antes de utilizar cualquier clase RACF de JAVA. Para obtener más información sobre cómo configurar las autorizaciones necesarias, consulte la guía z/OS Security Server Callable Services.

Almacenes de claves CMS

Puede establecer algunos atributos específicos del proveedor en los almacenes de claves CMS.

[z/OS][AIX Solaris HP-UX Linux Windows]Si el proveedor CMSKS da soporte al atributo createStashFileForCMS y éste se establece en true para los almacenes de claves CMSKS, WebSphere Application Server crea un archivo .sth en la ubicación de almacén de claves a la que hace referencia el atributo. La extensión .sth se anexa al nombre de almacén de claves. Por ejemplo, si el almacén de claves CMSKS está disponible para una configuración de plug-in y se establece createStashFileForCMS en true, el archivo stash representado en el siguiente código de ejemplo se crea en la vía de acceso ${USER_INSTALL_ROOT}\profiles\AppSrv01/config/cells/myhostCell01/nodes/myhostNode01/servers/webserver1/plugin-key.sth.
<keyStores xmi:id="KeyStore_1132071489571" name="CMSKeyStore" 
password="{xor}HRYNFAtrbxEwOzpvbhw6MzM=" provider="IBMCMSProvider" 
location="${USER_INSTALL_ROOT}\profiles\AppSrv01/config/cells/myhostCell01
/nodes/myhostNode01/servers/webserver1/plugin-key.kdb" type="CMSKS"
fileBased="true" createStashFileForCMS="true"
managementScope="ManagementScope_1132071489569"/>
Cuando se crea un almacén de claves CMS, el proveedor CMS es IBMi5OSJSSEProvider y el tipo CMS es IBMi5OSKeyStore, como se muestra en el ejemplo siguiente:
<keyStores xmi:id="KeyStore_1132071489571" name="CMSKeyStore" 
password="{xor}HRYNFAtrbxEwOzpvbhw6MzM=" provider="IBMi5OSJSSEProvider" 
location="${USER_INSTALL_ROOT}\profiles\AppSrv01/config/cells/myhostCell01
/nodes/myhostNode01/servers/webserver1/plugin-key.kdb" type="IBMi5OSKeyStore"
fileBased="true" createStashFileForCMS="true" 
managementScope="ManagementScope_1132071489569"/>
[IBM i]Nota: El tipo de almacén de claves IBM i IBMi5OSKeyStore no reconoce ni genera archivos stash de contraseñas .sth. En lugar de eso, conserva un registro interno de la contraseña del archivo de almacén de claves .kdb donde se creó. Si se mueve el archivo .kdb, la contraseña deja de estar asociada con el almacén de claves. En ese caso, DCM (Digital Certificate Manager) debe utilizarse para volver a crear el registro interno de la contraseña para el archivo de almacén de claves .kdb. Para obtener más información, consulte Recreación del registro de contraseñas internas de almacén de claves .kdb.
[IBM i]Atención: Cuando se crean certificados personales encadenados o se utiliza la tarea requestCACertificate con IBMi5OSKeyStore, IBMi5OSJSSEProvider requiere que el firmante de cada parte de la cadena esté presente en el almacén de claves antes de crear el nuevo certificado. Por lo tanto, debe importar el firmante en el almacén de claves IBMi5OSKeyStore antes de crear un nuevo certificado.

Almacenes de claves criptográficos de hardware

Para la configuración de dispositivos criptográficos, consulte Gestión de claves para los usos criptográficos .

Puede añadir una ranura como la propiedad personalizada com.ibm.ssl.keyStoreSlot, o como el atributo de configuración slot="0". La propiedad personalizada se lee antes que el atributo para la compatibilidad con versiones anteriores.


Icon that indicates the type of topic Concept topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=csec_sslkeystoreconfs
File name: csec_sslkeystoreconfs.html