Configurations SSL
Les configurations SSL contiennent les attributs nécessaires au contrôle du comportement des points de contact SSL des clients et des serveurs. Vous pouvez attribuer des configurations SSL pour obtenir des portées de gestion spécifiques. La portée héritée par une configuration SSL dépend de la manière dont vous l'avez créé, c'est-à-dire à l'aide d'une cellule, d'un noeud, d'un serveur ou d'un lien de point de contact dans la topologie de configuration.
Lorsque vous créez une configuration SSL, vous pouvez définir les attributs de connexion SSL suivants :
- Fichier de clés
- Certificat client par défaut pour les connexions sortantes
- Certificat serveur par défaut pour les connexions entrantes
- Magasin des tiers dignes de confiance
- Gestionnaire de clés pour la sélection d'un certificat
- Gestionnaire de relations de confiance pour l'établissement d'une relation de confiance au cours de l'établissement de liaison
- Protocole d'établissement de liaison
- Codes de chiffrement pour la négociation de l'établissement de liaison
- Prise en charge de l'authentification client et conditions requises
- Sélection de la gestion centrale
- Sélection de la référence directe
- Sélection de la connexion sortante dynamique
- Sélection par programme
. Vous pouvez visualiser une configuration SSL dans la topologie au niveau où elle a été créée et dans la portée héritée située sous ce point. Pour que la cellule toute entière puisse visualiser une configuration SSL, vous devez créer cette dernière au niveau de la cellule dans la topologie.
Configuration SSL dans le fichier security.xml
<repertoire xmi:id="SSLConfig_1" alias="NodeDefaultSSLSettings"
managementScope="ManagementScope_1" type="JSSE">
<setting xmi:id="SecureSocketLayer_1" clientAuthentication="false"
clientAuthenticationSupported="false" securityLevel="HIGH" enabledCiphers=""
jsseProvider="IBMJSSE2" sslProtocol="SSL_TLSv2" keyStore="KeyStore_1"
trustStore="KeyStore_2" trustManager="TrustManager_1" keyManager="KeyManager_1"
clientKeyAlias="default" serverKeyAlias="default"/>
</repertoire>
Les attributs de configuration SSL de l'échantillon de code précédent sont décrits dans le tableau 1. Attribut security.xml | Description | Valeut par défaut | Propriété SSL associée |
---|---|---|---|
xmi:id | L'attribut xml:id représente l'identificateur unique de cette entrée XML et détermine comment la configuration SSL est liée aux autres objets XML, tels que SSLConfigGroup. Cette valeur définie par le système doit être unique. | Le service de configuration d'administration définit la valeur par défaut. | Aucun. Cette valeur est utilisée uniquement pour les associations XML. |
alias | L'attribut alias définit le nom de la configuration SSL. La sélection directe utilise l'attribut alias et l'alias n'est pas utilisé comme préfixe pour le noeud. La portée de gestion s'assure que le nom est unique dans la portée. | La valeur par défaut est CellDefaultSSLSettings. |
com.ibm.ssl.alias |
managementScope | L'attribut managementScope définit la portée de gestion de la configuration SSL et détermine la visibilité de la configuration SSL lors de l'exécution. | La portée par défaut est la cellule. |
L'attribut managementScope n'est pas mappé vers une propriété SSL. Toutefois, il confirme si la configuration SSL est ou non associée à un processus. |
type | L'attribut type définit l'option de configuration JSSE (Java™ Secure Socket Extension) ou SSL
(System Secure Sockets Layer). JSSE est le type de configuration SSL adapté à la plupart des communications
sécurisées dans WebSphere
Application Server.
|
La valeur par défaut est JSSE. | com.ibm.ssl.sslType |
clientAuthentication | L'attribut clientAuthentication détermine si l'authentification client SSL est requise. | La valeur par défaut est false. | com.ibm.ssl.clientAuthentication |
clientAuthenticationSupported | L'attribut clientAuthenticationSupported détermine si l'authentification client SSL est prise en charge. Le client ne doit pas fournir un certificat client s'il n'en possède pas. Avertissement :
Lorsque vous définissez l'attribut clientAuthentication à la valeur true, vous remplacez la valeur définie pour l'attribut clientAuthenticationSupported. |
La valeur par défaut est false. | com.ibm.ssl.client.AuthenticationSupported |
securityLevel | L'attribut securityLevel détermine le groupe de codes de chiffrement. Les valeurs valides incluent STRONG (codes de chiffrement sur 128 bits), MEDIUM (codes de chiffrement sur 40 bits), WEAK (pour toutes les valeurs numériques sans chiffrement) et CUSTOM (si le groupe de codes de chiffrement est personnalisé). Lorsque vous définissez l'attribut enabledCiphers avec une liste spécifique de codes de chiffrement, le système ignore cet attribut. | La valeur par défaut est STRONG. | com.ibm.ssl.securityLevel |
enabledCiphers | Vous pouvez définir l'attribut enabledCiphers pour spécifier une liste unique de codes de chiffrement. Séparez les codes de chiffrement dans la liste par un espace. | La valeur par défaut est l'attribut securityLevel pour la sélection des codes de chiffrement. | com.ibm.ssl.enabledCipherSuites |
jsseProvider | L'attribut jsseProvider définit un fournisseur JSSE spécifique. | La valeur par défaut est IBMJSSE2. | com.ibm.ssl.contextProvider |
sslProtocol | L'attribut sslProtocol définit le protocole d'établissement de liaison SSL. Les options valides sont les suivantes :
La commande listSSLProtocols fournit des informations complémentaires sur les protocoles qui sont admis dans des configurations particulières, telles que FIPS 140-2 ou SP800-131. |
La valeur par défaut est SSL_TLSv2. | com.ibm.ssl.protocol |
keyStore | L'attribut keyStore définit le magasin de clés et les attributs de l'instance keyStore utilisée par la configuration SSL pour la sélection des clés. | La valeur par défaut est CellDefaultKeyStore. |
Pour plus d'informations, voir Configurations des magasins de clés. |
trustStore | L'attribut trustStore définit le magasin de clés utilisé par la configuration SSL pour la vérification de signature des certificats. | La valeur par défaut est CellDefaultTrustStore. |
Un magasin de clés (trustStore) est un terme JSSE logique. Il désigne un magasin de clés qui contient des certificats de signataire. Ces derniers valident les certificats envoyés à WebSphere Application Server au cours d'un établissement de liaison SSL. |
keyManager | L'attribut keyManager définit le gestionnaire de clés utilisé par WebSphere Application Server pour sélectionner les clés à partir d'un magasin de clés. Un gestionnaire de clés JSSE contrôle l'interface javax.net.ssl.X509KeyManager. Un gestionnaire de clés personnalisé contrôle les interfaces javax.net.ssl.X509KeyManager et com.ibm.wsspi.ssl.KeyManagerExtendedInfo. L'interface com.ibm.wsspi.ssl.KeyManagerExtendedInfo fournit plus d'informations à partir de WebSphereApplication Server. | La valeur par défaut est IbmX509. | com.ibm.ssl.keyManager définit un gestionnaire de clés connu et il accepte l'algorithme et les formats algorithme|fournisseur, par exemple IbmX509 et IbmX509|IBMJSSE2. com.ibm.ssl.customKeyManager définit un gestionnaire de clés personnalisé et il est prioritaire par rapport aux autres propriétés keyManager. Cette classe doit implémenter javax.net.ssl.X509KeyManager et peut implémenter com.ibm.wsspi.ssl.KeyManagerExtendedInfo. Pour plus d'informations, voir csec_sslx509certIDkeyman.html |
trustManager | L'attribut trustManager détermine le gestionnaire de relations de confiance ou la liste des gestionnaires de relations de confiance à utiliser pour déterminer s'il convient de faire confiance au côté homologue de la connexion. Un gestionnaire de relations de confiance JSSE implémente l'interface javax.net.ssl.X509TrustManager. Un gestionnaire de relations de confiance personnalisé peut également implémenter l'interface com.ibm.wsspi.ssl.TrustManagerExtendedInfo afin d'obtenir plus d'informations à partir de l'environnement WebSphere Application Server. | Le gestionnaire par défaut est IbmPKIX, qui peut être configuré pour la vérification de la liste de retrait de certificats (CRL) lorsque le certificat contient un point de distribution CRL. L'autre possibilité est IbmX509. | L'attribut com.ibm.ssl.trustManager définit un gestionnaire de relations de confiance connu qui est requis pour la plupart des situations d'établissement de liaison. L'attribut com.ibm.ssl.trustManager procède à la vérification d'expiration de certificats et à la validation des signatures. Vous pouvez définir com.ibm.ssl.customTrustManagers avec des gestionnaires de relations de confiance personnalisés complémentaires qui sont appelés au cours d'un établissement de liaison SSL. Séparez ces gestionnaires à l'aide du caractère de barre verticale (|). Pour plus d'informations, voir csec_sslx509certtrustdecisions.html |
Les configurations SSL client sont gérées à l'aide du fichier de propriétés ssl.client.props. Le fichier ssl.client.props se trouve dans le répertoire ${USER_INSTALL_ROOT}/properties de chaque profil. Pour plus d'informations sur la configuration de ce fichier, voir Fichier de configuration client ssl.client.props. Toute modification des propriétés système javax.net.ssl remplace la propriété correspondante dans le fichier ssl.client.props.