如何使用CCDT文件,用户名和密码在Python中连接到IBM MQ

时间:2018-10-18 21:49:37

标签: python ibm-mq tde

我能够使用带有Java中用户名和密码的CCDT文件连接到TDE MQ。我无法在Python中做到这一点。

在Python中,我已经为MQCHLLIB和MQCHLTAB设置了环境变量,但是当我尝试使用pymqi.connect进行连接时,我得到的是MQRC2538。我的代码如下

def SameStuff(list1,list2):                                                   
    if len(list1)!=len(list2):
        return False
    if len(list1) == 0 and len(list2) == 0:
        return True
    if list1[0] in list2:
        list2b = list2[:]
        list2b.remove(list1[0])
        return SameStuff(list1[1:], list2b)
    else:
        return False


print(SameStuff(['Hello',1,2,3], [3,2,1,'Hello']))
print(SameStuff(['HELLO',1,2,3],[3,'two',1,'Hello']))
print(SameStuff([1,2],[]))

例外是:

import pymqi
import os

os.environ['MQCHLLIB']='/root/pythonmq/'
os.environ['MQCHLTAB']='APPTDECH.TAB'

queue_manager = 'QM_APP'
user = "******" 
password = "*****"

qmgr = pymqi.connect(queue_manager, pymqi.CD(),None, user, password )

print('Connected')

qmgr.disconnect()

请让我知道是否有人知道如何做到这一点。

1 个答案:

答案 0 :(得分:1)

要使用CCDT,您必须使用未指定频道内容的pymqi.connect版本(例如pymqi.CD()),例如

qmgr = pymqi.connect(queue_manager)

但是,您没有任何参数可以将userpassword放入

简而言之,Python界面并没有您需要的所有组合。

IBM MQ提供了一个名为mqccred的出口,它可以代替您的凭证,用于无法更改的应用程序,或者在您的情况下无法传递用户ID的应用程序。密码。

进一步阅读