Liberty : Fichier de clés

Liberty ne peut créer qu'un type de magasin de clés JKS (magasin de clés Java™). La prise en charge d'autres types de magasin de clés dans Liberty dépend des éléments pris en charge par l'environnement d'exécution Java (JRE) sous-jacent.

Pour plus d'informations sur l'attribut de configuration de l'élément keystore, voir Liberty : Attributs de configuration SSL.

JKS et JCEKS

Les magasins de clés JKS (Java Keystore) et JCEKS (Java Cryptography Extensions Keystore) sont communs aux JRE IBM et Oracle, et peuvent être configurés à l'identique dans ces deux JRE. JKS est le type de magasin de clés par défaut dans Liberty et le seul type de magasin de clés que Liberty peut créer. Si aucun type de magasin de clés n'est spécifié dans la configuration, JKS est utilisé.

Voici un exemple de configuration de magasin de clés JKS :
     <keyStore id="sampleJKSKeyStore"
      location="MyKeyStoreFile.jks"
      type="JKS" password="myPassword" />
Voici un exemple de configuration de magasin de clés JCEKS :
    <keyStore id="sampleJCEKSKeyStore"
     location="MyKeyStoreFile.jceks"
     type="JCEKS" password="myPassword" />

Magasin de clés PKCS11

Un magasin de clés cryptographique matériel peut être configuré de sorte que le serveur Liberty puisse être utilisé pour fournir la prise en charge de jeton cryptographique.

L'utilisateur doit fournir un fichier de configuration spécifique de l'unité matérielle. Le fichier de configuration est un fichier texte qui contient des entrées au format attribute = value. Le fichier doit contenir au minimum les attributs name et library. Exemple :
name = HWDevice
library = /opt/foo/lib/libpkcs11.so

L'attribut name représente le nom qui est attribué à cette instance de l'unité. L'attribut library contient un chemin d'accès à la bibliothèque fournie par l'unité matérielle pour accéder à l'unité. Le fichier de configuration peut également contenir des données spécifiques de l'unité matérielle.

Pour qu'un magasin de clés PKCS11 puisse être configuré dans Liberty, l'élément keystore doit contenir les zones suivantes :
  • id - Identifie de manière unique l'élément keystore dans la configuration.
  • location - Chemin d'accès au fichier de configuration spécifique de l'unité matérielle.
  • type - PKCS11 doit être spécifié comme type de magasin de clés.
  • fileBased - Doit avoir pour valeur false pour identifier ce magasin de clés en tant qu'unité.
  • password - Mot de passe nécessaire pour accéder aux clés dans l'unité.
  • provider - Fournisseur nécessaire. Pour l'environnement d'exécution Java d'IBM®, la valeur doit être IBMPKCS11Impl et pour Oracle JRE, la valeur doit être SunPKCS11.
Voici un exemple de configuration :
<keyStore id="hwKeyStore" 
          location="${server.config.dir}/HWCrypto.cfg" 
          type="PKCS11" 
          fileBased="false" 
          password="{xor}Lz4sLCgwLTs=" 
          provider="IBMPKCS11Impl"/>  

Magasin de clés PKCS12

Le magasin de clés Public Key Cryptography Standards #12 (PKCS12) peut être utilisé mais ne peut pas être créé par Liberty lorsque vous utilisez le JRE IBM. Voici un exemple de la configuration de fichier de clés PKCS12 :
    <keyStore id="samplePKCS12KeyStore"
     location="MyKeyStoreFile.p12"
     type="PKCS12" password="myPassword" />

Magasin de clés CMS

Le magasin de clés CMS peut être configuré (une configuration spéciale est requise) mais ne peut pas être créé par Liberty lorsque vous utilisez le JRE IBM. Le fournisseur CMS n'est pas disponible par défaut dans IBM JRE, par conséquent, il doit être ajouté à la liste de fournisseurs dans le fichier java.security de l'environnement IBM JRE. Dans l'exemple suivant, la classe com.ibm.security.cmskeystore.CMSProvider est ajoutée à la fin de la liste. Vérifiez que le numéro de fournisseur est correct dans la liste de fournisseurs. Liberty n'utilise pas le fichier de dissimulation du fichier de clés CMS pour accéder au fichier de clés.
    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
Pour utiliser le magasin de clés CMS, la configuration du fichier server.xml est la suivante :
    <keyStore id="sampleCMSKeyStore" 
     password="myPassword"
     location="MyKeyStoreFile.kdb"
     provider="IBMCMSProvider"
     type="CMSKS"/>

Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwlp_sec_keystores
Nom du fichier : rwlp_sec_keystores.html