Almacenes de claves
Liberty solo puede crear un tipo de almacén de claves de Java™ Keystore (JKS). El soporte para otros tipos de almacén de claves en Liberty puede depender de lo qué soporta el Java Runtime Environment (JRE) subyacente.
Para obtener más información sobre los atributos de configuración del elemento keystore, consulte atributos de configuración SSL.
JKS y JCEKS
Java Keystore (JKS) and Java Cryptography Extensions Keystore (JCEKS) son comunes entre el IBM JRE y el Oracle JRE, y se pueden configurar igual utilizando cualquier JRE. JKS es el tipo de almacén de claves predeterminado en Liberty, y el único tipo de almacén de claves que puede crear Liberty. Si no se especifica ningún tipo de almacén de claves en la configuración, se utiliza JKS.
<keyStore id="sampleJKSKeyStore"
location="MyKeyStoreFile.jks"
type="JKS" password="myPassword" />
<keyStore id="sampleJCEKSKeyStore"
location="MyKeyStoreFile.jceks"
type="JCEKS" password="myPassword" />
Almacén de claves PKCS11
Se puede configurar un almacén de claves criptográfico de hardware de forma que el servidor Liberty se puede utilizar para proporcionar soporte de señal criptográfica.
name = HWDevice
library = /opt/foo/lib/libpkcs11.so
El atributo name es un nombre que se da a esta instancia del dispositivo. El atributo library contiene una vía de acceso a la biblioteca proporcionada por el dispositivo de hardware para acceder al dispositivo. El archivo de configuración también puede contener datos de configuración específicos del dispositivo de hardware.
- id: identifica de forma exclusiva el elemento keystore en la configuración.
- location: vía de acceso al archivo de configuración específico del dispositivo de hardware.
- type: PKCS11 debe especificarse como el tipo de almacén de claves.
- fileBased: debe ser falso para identificar este almacén de claves como un dispositivo.
- password : contraseña que se necesita para acceder a claves en el dispositivo.
- provider: proveedor que se necesita. Para IBM® JRE, el valor debe ser IBMPKCS11Impl y, para Oracle JRE, debe ser SunPKCS11.
<keyStore id="hwKeyStore"
location="${server.config.dir}/HWCrypto.cfg"
type="PKCS11"
fileBased="false"
password="{xor}Lz4sLCgwLTs="
provider="IBMPKCS11Impl"/>
Almacén de claves PKCS12
<keyStore id="samplePKCS12KeyStore"
location="MyKeyStoreFile.p12"
type="PKCS12" password="myPassword" />
Almacén de claves CMS
security.provider.1=com.ibm.jsse2.IBMJSSEProvider2
security.provider.2=com.ibm.crypto.provider.IBMJCE
security.provider.3=com.ibm.security.jgss.IBMJGSSProvider
security.provider.4=com.ibm.security.cert.IBMCertPath
security.provider.5=com.ibm.security.sasl.IBMSASL
security.provider.6=com.ibm.xml.crypto.IBMXMLCryptoProvider
security.provider.7=com.ibm.xml.enc.IBMXMLEncProvider
security.provider.8=org.apache.harmony.security.provider.PolicyProvider
security.provider.9=com.ibm.security.jgss.mech.spnego.IBMSPNEGO
security.provider.10=com.ibm.security.cmskeystore.CMSProvider
<keyStore id="sampleCMSKeyStore"
password="myPassword"
location="MyKeyStoreFile.kdb"
provider="IBMCMSProvider"
type="CMSKS"/>

Tipos de conjuntos de claves RACF
Los conjuntos de claves RACF se pueden utilizar, pero no las puede crear Liberty, como almacenes de claves en z/OS. Los dos tipos de conjuntos de claves disponibles son JCERACFKS y JCEHYBRIDRACFKS.
- Almacén de claves JCERACFKS
- JCERACFKS es un tipo de conjunto de claves RACF. Debe configurar RACF, antes de que before Liberty pueda utilizarlo. Proporcione un URL al conjunto de claves en el atributo location, y establezca el atributo fileBased en false.
- A continuación se muestra un ejemplo de uso del almacén de claves JCERACFKS:
<keyStore id="sampleKeyring" location="safkeyring:///Keyring" type="JCERACFKS" password="password" fileBased="false" readOnly="true" />
- Almacén de claves JCEHYBRIDRACFKS
- JCEHYBRIDRACFKS es un conjunto de claves especial que comprueba si se ha configurado un tipo de almacén de claves de hardware. Si el almacén de claves JCEHYBRIDRACFKS no está configurado, se utiliza el conjunto de claves RACF. Se soporta en IBM Java 7 SR3 y posterior. Debe editar el archivo java.security y añadir la clase com.ibm.crypto.ibmjcehybrid.provider.IBMJCEHYBRID en la parte superior de la lista de proveedores. Asegúrese de que los números de proveedor se han ajustado para la nueva entrada.
- A continuación se muestra un ejemplo de uso del almacén de claves JCEHYBRIDRACFKS:
<keyStore id="sampleHybridKeyring" location="safkeyringhybrid:///HybridKeyring" type="JCEHYBRIDRACFKS" password="{xor}Lz4sLCgwLTs=" fileBased="false" readOnly="true" />