Exception d’authentification de WebSphere MQ Security sous Unix

Notre application s’exécute sur un système Sun Solaris et dispose d’une installation WebSphere MQ locale. L’application utilise le mode de liaison pour se connecter au gestionnaire de files d’attente. Lorsque vous essayez d’envoyer un message à la queue locale, la liaison JNDI est réussie, mais nous rencontrons javax.jms.JMSSecurityException: MQJMS2013: invalid security authentication supplied for MQQueueManager erreur javax.jms.JMSSecurityException: MQJMS2013: invalid security authentication supplied for MQQueueManager . Lorsqu’elles ont été examinées, les informations d’identification (ID utilisateur) utilisées pour l’authentification ne sont pas sensibles à la casse de l’utilisateur sur lequel l’application est exécutée. L’identifiant utilisateur correspond mais ce n’est pas une correspondance sensible à la casse. Par défaut, l’utilisateur sur lequel l’application est exécutée sera passé pour l’authentification, mais ici la correspondance sensible à la casse échoue. Le serveur d’applications est WebLogic. Appréciez toutes les entrées.

Pour ouvrir la queue locale, l’application doit d’abord être connectée au gestionnaire de files d’attente avec succès. L’erreur sur la queue distante est une erreur de connexion, elle n’arrive même pas au gestionnaire de files d’attente. Cela suggère que vous utilisez différentes fabriques de connexions et que la seconde présente des différences dans les parameters de connectivité. La première étape consiste à concilier ces différences.

En outre, une erreur de sécurité MQJMS2013 peut avoir plusieurs conséquences, dont la plupart ne sont pas réellement liées à la qualité de service. Par exemple, certaines personnes stockent leurs objects gérés dans LDAP et un problème d’authentification entraîne cette erreur. Pour les personnes qui utilisent un JNDI basé sur un système de fichiers, les permissions de fichiers du système d’exploitation peuvent provoquer la même chose. Toutefois, s’il s’agit d’un problème WMQ réel (que cela semble être), alors l’exception liée contiendra le code de raison MQ (par exemple, MQRC = 2035). Si vous voulez être en mesure de mieux diagnostiquer les problèmes de MQ (ou tout transport JMS), il est utile de prendre l’habitude d’imprimer les exceptions liées.

Si vous ne parvenez pas à résoudre ce problème en fonction de cette entrée, je vous conseille de mettre à jour la question avec les détails des définitions d’object géré et le code de motif obtenu en imprimant les exceptions liées.

Nous utilisions createQueueConnection () dans QueueConnectionFactory pour créer la connexion et le problème a été résolu en utilisant la méthode createQueueConnection (“”, “”). L’identifiant unix (webA) est sensible à la casse et l’application essayait de s’authentifier sur le MQ avec l’ID utilisateur insensible à la casse (weba) et le gestionnaire de files d’attente MQ rejetait la tentative de connexion. Pouvez-vous nous dire pourquoi l’application envoyait le nom d’utilisateur (weba) insensible à la casse plus tôt?

Merci Arun