Configurações de SSL
As configurações de SSL (Secure Sockets Layer) contêm atributos que permitem o controle de comportamento dos terminais SSL de cliente e servidor. É possível designar as configurações de SSL para que tenham escopos de gerenciamento específicos. O escopo herdado por uma configuração de SSL depende de ela ser criada utilizando uma célula, um nó, um servidor ou um link de terminal na topologia da configuração.
Ao criar uma configuração de SSL, é possível definir os seguintes atributos de conexão SSL:
- Armazenamento de Chaves
- Certificado cliente padrão para conexões de saída
- Certificado do servidor padrão para conexões de entrada
- Armazenamento confiável
- Gerenciador de chaves para seleção de um certificado
- Gerenciador ou gerenciadores de confiança para estabelecer confiança durante o protocolo de reconhecimento
- Protocolo de reconhecimento
- Cifras para negociar o protocolo de reconhecimento
- Suporte e requisitos de autenticação de cliente
- Seleção central de gerenciamento
- Seleção direta de referência
- Seleção dinâmica de conexão de saída
- Seleção Programática
. É possível visualizar uma configuração de SSL no nível em que foi criada e no escopo herdado abaixo desse ponto na topologia. Para que a célula inteira visualize uma configuração de SSL, você deve criar a configuração no nível de célula na topologia.
A configuração de SSL no arquivo 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>
Os atributos de configuração de SSL das amostra de código anterior são descritos na Tabela 1. Atributo security.xml | Description | Default | Propriedade SSL associada |
---|---|---|---|
xmi:id | O atributo xml:id representa o identificador exclusivo para esta entrada XML e determina como a configuração SSL está vinculada a outros objetos XML, como SSLConfigGroup. Este valor definido pelo sistema deve ser exclusivo. | O serviço de configuração administrativa define o valor padrão. | Nenhuma. Este valor é utilizado apenas para associações XML. |
alias | O atributo alias define o nome da configuração de SSL. A seleção direta utiliza este atributo e o nó não é prefixado para o alias. Em vez disso, o escopo de gerenciamento trata de assegurar que o nome seja exclusivo no escopo. | O padrão é CellDefaultSSLSettings. |
com.ibm.ssl.alias |
managementScope | O atributo managementScope define o escopo de gerenciamento da configuração de SSL e determina sua visibilidade no tempo de execução. | O escopo padrão é a célula. |
O atributo managementScope não é mapeado para uma propriedade SSL. No entanto, ele confirma se a configuração de SSL está associada a um processo. |
da mensagem | O atributo type define a opção de configuração JSSE (Java™ Secure
Socket Extension) ou SSSL (System Secure Sockets Layer). JSSE é o tipo de configuração
SSL para a maioria das comunicações seguras no WebSphere Application
Server.
|
O padrão é JSSE. | com.ibm.ssl.sslType |
clientAuthentication | O atributo clientAuthentication determina se a autenticação de cliente SSL é requerida. | O padrão é falso. | com.ibm.ssl.clientAuthentication |
clientAuthenticationSupported | O atributo clientAuthenticationSupported determina
se a autenticação de cliente SSL é suportada. O cliente não precisará
fornecer um certificado cliente se não tiver um certificado cliente. Atenção:
Ao definir o atributo clientAuthentication
como true, o valor definido para o atributo clientAuthenticationSupported
é substituído. |
O padrão é falso. | com.ibm.ssl.client.AuthenticationSupported |
securityLevel | O atributo securityLevel determina o grupo do conjunto de criptografia. Os valores válidos incluem STRONG (códigos de 128 bits), MEDIUM (códigos de 40 bits), WEAK (para todos os códigos sem criptografia) e CUSTOM (se o grupo de conjuntos de criptografia for customizado). Quando você configura o atributo enabledCiphers com uma lista de cifras específicas, o sistema ignora este atributo. | O padrão é STRONG. | com.ibm.ssl.securityLevel |
enabledCiphers | O atributo enabledCiphers pode ser configurado para especificar uma lista exclusiva de conjuntos de criptografia. Separe cada conjunto de criptografia na lista com um espaço. | O padrão é o atributo securityLevel para a seleção do conjunto de criptografia. | com.ibm.ssl.enabledCipherSuites |
jsseProvider | O atributo jsseProvider define um provedor JSSE específico. | O padrão é IBMJSSE2. | com.ibm.ssl.contextProvider |
sslProtocol | O atributo sslProtocol define o protocolo de reconhecimento
de SSL. As opções válidas incluem:
O comando listSSLProtocols fornece mais informações sobre quais protocolos são válidos em configurações particulares, como FIPS 140-2 ou SP800-131. |
The default is SSL_TLSv2. | com.ibm.ssl.protocol |
keyStore | O atributo keyStore define o armazenamento de chaves e os atributos da instância do armazenamento de chaves utilizada pela configuração do SSL para a seleção da chave. | O padrão é CellDefaultKeyStore. |
Para obter informações adicionais, consulte Configurações do Armazenamento de Chaves. |
trustStore | O atributo trustStore define o armazenamento de chaves utilizado pela configuração de SSL para verificação da assinatura do certificado. | O padrão é CellDefaultTrustStore. |
Um trustStore é um termo lógico JSSE. Significa um armazenamento de chaves que contém certificados signatários. Os certificados signatários validam os certificados que são enviados ao WebSphere Application Server durante um estabelecimento de comunicação SSL. |
keyManager | O atributo keyManager define o gerenciador de chaves que o WebSphere Application Server utiliza para selecionar chaves em um armazenamento de chaves. Um gerenciador de chaves do JSSE controla a interface javax.net.ssl.X509KeyManager. Um gerenciador de chaves customizado controla as interfaces javax.net.ssl.X509KeyManager e com.ibm.wsspi.ssl.KeyManagerExtendedInfo. A interface com.ibm.wsspi.ssl.KeyManagerExtendedInfo fornece mais informações do WebSphere Application Server. | O padrão é IbmX509. | com.ibm.ssl.keyManager define um gerenciador de chaves reconhecido e aceita os formatos algorithm e algorithm|provider, por exemplo, IbmX509 e IbmX509|IBMJSSE2. com.ibm.ssl.customKeyManager define um gerenciador de chaves customizado e tem precedência sobre outras propriedades do keyManager. Esta classe deve implementar javax.net.ssl.X509KeyManager e pode implementar com.ibm.wsspi.ssl.KeyManagerExtendedInfo. Para obter informações adicionais, consulte csec_sslx509certIDkeyman.html |
trustManager | O trustManager determina qual gerenciador de confiança ou lista de gerenciadores de confiança usar para determinar se deve confiar no lado do período da conexão. Um gerenciador de chaves do JSSE implementa a interface javax.net.ssl.X509TrustManager. Um gerenciador de confiança customizado poderá também implementar a interface com.ibm.wsspi.ssl.TrustManagerExtendedInfo para obter mais informações do ambiente do WebSphere Application Server. | O padrão é IbmPKIX, que pode ser configurado para verificação da lista de revogação de certificado (CRL), quando o certificado contiver um ponto de distribuição de CRL. A outra opção é IbmX509. | com.ibm.ssl.trustManager define um gerenciador de confiança reconhecido, requerido para a maioria das situações do protocolo de reconhecimento. com.ibm.ssl.trustManager executa verificação de expiração de certificados e validação de assinatura. É possível definir com.ibm.ssl.customTrustManagers com gerenciadores de confiança customizados adicionais chamados durante um protocolo de reconhecimento SSL. Separe gerenciadores de confiança adicionais com o caractere de barra vertical (|). Para obter informações adicionais, consulte csec_sslx509certtrustdecisions.html |
As configurações de SSL do cliente são gerenciadas usando o arquivo ssl.client.props properties. O arquivo ssl.client.props está localizado no diretório ${USER_INSTALL_ROOT}/properties de cada perfil. Para obter informações adicionais sobre a configuração desse arquivo, consulte Arquivo de Configuração do Cliente ssl.client.props. Especificar quaisquer propriedades de sistema javax.net.ssl substituirá a propriedade correspondente no arquivo ssl.client.props.