Configuraciones SSL
Las configuraciones SSL (Secure Sockets Layer - Capa de sockets seguros) contienen los atributos que le permiten controlar el comportamiento de puntos finales SSL de servidor y cliente. Puede asignar configuraciones SSL para que tengan ámbitos de gestión específicos. El ámbito que hereda una configuración SSL depende de si se crea utilizando un enlace de célula, nodo, servidor o punto final en la topología de configuración.
Al crear una configuración SSL, puede establecer los siguientes atributos de conexión SSL:
- Almacén de claves
- Certificado de cliente por omisión para las conexiones de salida
- Certificado de servidor por omisión para las conexiones de entrada
- Almacén de confianza
- Gestor de claves para seleccionar un certificado
- Uno o más gestores de confianza para establecer la confianza durante el reconocimiento de comunicación
- Protocolo de reconocimiento de comunicación
- Cifras para negociar el reconocimiento de comunicación
- Soporte y requisitos para la autenticación de cliente
- Selección de la gestión central
- Selección de la referencia directa
- Selección de la conexión de salida dinámica
- Selección programática
. Puede ver una configuración SSL en el nivel que se creó y en el ámbito heredado por debajo de ese punto en la topología. Si desea que toda la célula vea una configuración SSL, debe crear la configuración a nivel de célula en la topología.
Configuración SSL en el archivo 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>
Los atributos de configuración SSL del ejemplo de código
anterior se describen en la tabla 1. Atributo de security.xml | Descripción | Valor predeterminado | Propiedad SSL asociada |
---|---|---|---|
xmi:id | El atributo xml:id representa el identificador exclusivo para esta entrada XML y determina cómo la configuración SSL se enlaza con otros objetos XML, por ejemplo un SSLConfigGroup. Este valor definido por el sistema debe ser exclusivo. | El servicio de configuración administrativa define el valor predeterminado. | Ninguna. Este valor sólo se utiliza para las asociaciones XML. |
alias | El atributo alias define el nombre de la configuración SSL. La selección directa utiliza el atributo alias y el nodo no aparece como prefijo del alias. En su lugar, el ámbito de gestión se ocupa de garantizar que el nombre sea exclusivo dentro del ámbito. | El valor predeterminado es CellDefaultSSLSettings. |
com.ibm.ssl.alias |
managementScope | El atributo managementScope define el ámbito de gestión para la configuración SSL y determina la visibilidad de la configuración SSL durante el tiempo de ejecución. | El ámbito por omisión es la célula. |
El atributo managementScope no se correlaciona con una propiedad SSL. No obstante, confirma si la configuración SSL está asociada con un proceso. |
type | El atributo type define la opción de configuración
JSSE (Java™ Secure Socket Extension) o SSSL (System Secure Sockets Layer). JSSE es el tipo de configuración SSL para la mayoría de las comunicaciones
seguras de WebSphere Application Server.
|
El valor predeterminado es JSSE. | com.ibm.ssl.sslType |
clientAuthentication | El atributo clientAuthentication determina si es necesaria la autenticación de cliente SSL. | El valor predeterminado es false. | com.ibm.ssl.clientAuthentication |
clientAuthenticationSupported | El atributo clientAuthenticationSupported determina
si se da soporte a la autenticación de cliente SSL. No es necesario que el
cliente proporcione un certificado de cliente si no lo tiene. Atención:
Cuando se establece el atributo
clientAuthentication en true, se altera temporalmente el valor
establecido para el atributo clientAuthenticationSupported. |
El valor predeterminado es false. | com.ibm.ssl.client.AuthenticationSupported |
securityLevel | El atributo securityLevel determina el grupo de suites de cifrado. Los valores válidos incluyen STRONG (cifrados de 128 bits), MEDIUM (cifrados de 40 bits), WEAK (para todos los cifrados sin cifrado) y CUSTOM (si el grupo de suites de cifrado está personalizado). Cuando se establece el atributo enabledCiphers con una lista específica de cifrados, el sistema ignora este atributo. | El valor por omisión es STRONG. | com.ibm.ssl.securityLevel |
enabledCiphers | Puede establecer el atributo enabledCiphers para especificar una lista exclusiva de suites de cifrado. Separe cada suite de cifrado de la lista con un espacio. | El valor predeterminado es el atributo securityLevel para la selección de suite de cifrado. | com.ibm.ssl.enabledCipherSuites |
jsseProvider | El atributo jsseProvider define un proveedor JSSE específico. | El valor predeterminado es IBMJSSE2. | com.ibm.ssl.contextProvider |
sslProtocol | El atributo sslProtocol define el protocolo de
reconocimiento de comunicación SSL. Entre las opciones válidas se incluyen:
El mandato listSSLProtocols proporciona más información sobre qué protocolos son válidos en configuraciones determinadas, como FIPS 140-2 o SP800-131. |
El valor predeterminado es SSL_TLSv2. | com.ibm.ssl.protocol |
keyStore | El atributo keyStore define el almacén de claves y los atributos de la instancia de keyStore que la configuración SSL utiliza para la selección de claves. | El valor predeterminado es CellDefaultKeyStore. |
Para obtener más información, consulte Configuraciones de almacén de claves. |
trustStore | El atributo trustStore define el almacén de claves que la configuración SSL utiliza para la verificación de firmas de certificados. | El valor predeterminado es CellDefaultTrustStore. |
Un trustStore es un término JSSE lógico. Significa un almacén de claves que contiene certificados de firmante. Los certificados de firmante validan los certificados que se envían a WebSphere Application Server durante el reconocimiento de comunicación SSL. |
keyManager | El atributo keyManager define el gestor de claves que WebSphere Application Server utiliza para seleccionar claves de un almacén de claves. Un gestor de claves JSSE controla la interfaz javax.net.ssl.X509KeyManager. Un gestor de claves personalizado controla las interfaces javax.net.ssl.X509KeyManager y com.ibm.wsspi.ssl.KeyManagerExtendedInfo. La interfaz com.ibm.wsspi.ssl.KeyManagerExtendedInfo proporciona más información sobre WebSphere Application Server. | El valor predeterminado es IbmX509. | com.ibm.ssl.keyManager define un gestor de claves reconocido y acepta los formatos algoritmo y algoritmo|proveedor, por ejemplo, IbmX509 y IbmX509|IBMJSSE2. com.ibm.ssl.customKeyManager define un gestor de claves personalizado y tiene prioridad ante las demás propiedades keyManager. Esta clase debe implementar javax.net.ssl.X509KeyManager y puede implementar com.ibm.wsspi.ssl.KeyManagerExtendedInfo. Para obtener más información, consulte csec_sslx509certIDkeyman.html |
trustManager | trustManager determina qué gestor de confianza o lista de gestores de confianza se utilizará para determinar si se va a confiar en el extremo de igual de la conexión. Un gestor de confianza JSSE implementa la interfaz javax.net.ssl.X509TrustManager. Un gestor de confianza personalizado también puede implementar la interfaz com.ibm.wsspi.ssl.TrustManagerExtendedInfo para obtener más información del entorno de WebSphere Application Server. | El valor predeterminado es IbmPKIX, que se pude configurar para la verificación de la lista de revocación de certificados (CRL) cuando el certificado contiene un punto de distribución CRL. La otra opción es IbmX509. | com.ibm.ssl.trustManager define un gestor de confianza reconocido, que es necesario para la mayoría de las situaciones de reconocimiento de comunicación. com.ibm.ssl.trustManager lleva a cabo la comprobación de caducidad y validación de firmas de los certificados. Puede definir com.ibm.ssl.customTrustManagers con gestores de confianza personalizados adicionales que se llaman durante el reconocimiento de comunicación SSL. Separe los gestores de confianza adicionales con el carácter de barra vertical (|). Para obtener más información, consulte csec_sslx509certtrustdecisions.html |
Las configuraciones SSL de cliente se gestionan mediante el archivo ssl.client.props propiedades. El archivo ssl.client.props se encuentra en el directorio ${USER_INSTALL_ROOT}/properties de cada perfil. Para obtener más información sobre cómo configurar este archivo, consulte el Archivo de configuración del cliente ssl.client.props. Si se especifican propiedades de sistema javax.net.ssl, se alterará temporalmente la propiedad correspondiente en el archivo ssl.client.props.