Handshake SSL e Processo de Autenticação

Para usar o SSL, o cliente (o IMS TM Resource Adapter) e o servidor (IMS Connect) devem ser configurados para o handshake SSL.
No momento da execução, quando o aplicativo cliente Java™ executar uma interação com o IMS, as interações serão transmitidas em uma conexão segura (SSL) entre o cliente SSL, o IMS TM Resource Adapter e o servidor SSL, IMS Connect. Ao abrir uma conexão SSL entre o cliente e o servidor, ocorre um processo de handshake SSL. Esse handshake do SSL, que é transparente para o aplicativo cliente Java, ocorre como a seguir:
  1. O cliente do SSL, o IMS TM Resource Adapter, inicia uma conexão ao enviar uma mensagem de apresentação do cliente. O servidor, IMS Connect, responde com uma mensagem de apresentação do servidor e o certificado que contém a chave pública.
  2. Se esse certificado for autenticado com êxito pelo servidor, uma chave de sessão será estabelecida em ambas as extremidades e uma especificação de código será negociada, determinando o tipo de criptografia a ser usada na conexão. O código pode ser STRONG, WEAK ou ENULL. O handshake SSL será, então, concluído se o servidor não requerer a autenticação de cliente.
  3. Se o servidor requerer a autenticação de cliente, o cliente autenticará o certificado do servidor usando a chave pública do servidor a partir do certificado. Se essa autenticação tiver êxito, um certificado de cliente será enviado do keystore do cliente. Se esse certificado for autenticado com êxito pelo servidor, uma chave de sessão será estabelecida em ambas as extremidades e uma especificação de código será negociada, determinando o tipo de criptografia a ser usada na conexão. O handshake do SSL é então concluído.
  4. O cliente e o servidor estão prontos para enviar e receber dados criptografados.
Importante: Quando os aplicativos cliente são executados em um ambiente gerenciado, que é particularmente preferred com conexões SSL, o IMS TM Resource Adapter deve usar conexões do soquete persistente para se comunicar com o IMS Connect. Entretanto, em um ambiente não gerenciado, essas conexões persistentes são desconectadas pelo aplicativo após cada uso, em vez de serem disponibilizadas para reutilização por outro aplicativo.

Quando o WebSphere Application Server Connection Manager é usado, as conexões podem ser reutilizadas em série por outros aplicativos cliente. O Connection Manager cria conexões, se necessário, e as fornece aos aplicativos quando necessário. Quando um aplicativo é concluído usando uma conexão, o gerenciador de conexões retorna essa conexão ao conjunto livre, tornando-o disponível para reutilização por qualquer outro aplicativo que requer esse tipo de conexão. Entretanto, a autenticação de cliente e servidor ocorre somente uma vez para cada soquete, durante o handshake que ocorre quando esse soquete é criado pela primeira vez e inicializado como um soquete de SSL. Quando um soquete é reutilizado, o cliente SSL, o IMS TM Resource Adapter e o servidor, IMS Connect, não são alterados. Consequentemente, não é necessário autenticar novamente o cliente e o servidor (passar novamente pelo processo de handshake) quando um soquete é reutilizado. O ID de cliente que identifica um soquete permanece igual sempre que um soquete é reutilizado.

Se o valor de SSLEncryption for configurado como ENULL, o desempenho será mais rápido do que nas conexões SSL que usam a criptografia forte ou fraca. O nível de melhoria de desempenho depende de diversos fatores, incluindo o fato de a criptografia de hardware ou software ser ou não usada. No geral, a criptografia de hardware é mais rápida que a criptografia de software.


Feedback