![[AIX]](ngaix.gif)
![[ MQ 9.4.0 Jun 2024]](ng940.gif)
![[Linux]](nglinux.gif)
Usando tokens de autenticação em um aplicativo
Grave seu aplicativo para fornecer um token de autenticação quando ele se conectar a um gerenciador de filas do IBM® MQ
Antes de Começar
No IBM MQ 9.4.0, os aplicativos podem fornecer um token de autenticação quando se conectam a um gerenciador de filas.
- Ele deve ser gravado em C ou Java (usando o IBM MQ classes for JMS/ Jakarta Messaging)
- Ele deve se conectar ao Gerenciador de Filas como um IBM MQ client Ou seja, o aplicativo deve se conectar ao gerenciador de filas em uma rede, em vez de usar ligações locais.
- Ele deve se conectar a um gerenciador de filas executado em AIX® ou Linux®.
O aplicativo que fornece o token de autenticação pode executar em qualquer plataforma que suporte IBM MQ MQI clients.
Os clientes que usam a reconexão automática do cliente não podem fornecer um token de autenticação quando eles se conectam Se um aplicativo fornecer um token de autenticação e especificar a opção MQCNO_RECONNECT ou MQCNO_RECONNECT_Q_MGR na estrutura MQCNO, a conexão falhará e o código de razão MQRC_RECONNECT_INCOMPATÍVEL (2547) será retornado ao aplicativo. Para obter mais informações sobre reconexão automática do cliente, consulte Reconexão automática do cliente.
Se não for possível gravar o aplicativo para fornecer um token de autenticação devido a esses requisitos, será possível migrar seu aplicativo para usar tokens de autenticação usando uma saída de segurança do cliente. A saída de segurança do cliente pode ser gravada para configurar o token de autenticação na estrutura MQCSP.. Para obter mais informações sobre saídas de segurança, consulte Saídas de segurança em uma conexão do cliente.
A partir de IBM MQ 9.4.0, JMS os aplicativos cliente podem fornecer diretamente um token ao se conectarem (consulte Obtendo um token de autenticação do emissor de token escolhido). Antes do IBM MQ 9.4.0, os aplicativos Java podem fornecer um token indiretamente por meio de um programa de saída.. Para obter mais informações, consulte Classe Java MQCSP..
Em IBM MQ 9.4.3, os aplicativos JMS podem configurar as propriedades da fábrica de conexões de modo que a biblioteca IBM MQ JMS recupere um token em nome do aplicativo de um provedor de token URL. O token é então enviado ao gerenciador de filas para autenticação. Isso também se aplica a clientes reconectáveis, ou seja, MQRC_RECONNECT_INCOMPATIBLE não é lançado se WMQ_CLIENT_RECONNECT_OPTIONS estiver definido como WMQ_CLIENT_RECONNECT ou WMQ_CLIENT_RECONNECT_Q_MGR.
Observação: a partir de IBM MQ 9.4.5, você pode adicionar configurações personalizadas de SSLSocketFactory com a TOKEN_SSL_SOCKET_FACTORY propriedade para controlar como seu aplicativo recupera com segurança tokens JWT de pontos de extremidade HTTPS. Se um aplicativo cliente fornecer o TOKEN_SSL_SOCKET_FACTORY, a TOKEN_ENDPOINT propriedade tornar-se-á obrigatória e, se estiver ausente, uma mensagem de erro será retornada ao aplicativo cliente. Para obter mais informações, consulte Fornecendo um SSLSocketFactory personalizado em IBM MQ classes for JMS/Jakarta Messaging.Sobre esta tarefa
- O gerenciador de filas foi configurado para aceitar tokens de autenticação seguindo as etapas em Configurando um gerenciador de filas para aceitar tokens de autenticação usando um armazenamento de chaves local.
- Sua aplicação pode obter um token válido conforme necessário do seu servidor de autenticação. Consulte Obtendo um token de autenticação do emissor de token escolhido.
Para fornecer um token de autenticação quando o aplicativo se conectar a um gerenciador de fila do IBM MQ , inclua o processo a seguir: