使用python连接db2,安全机制=13

fnvucqvd  于 2022-11-07  发布在  DB2
关注(0)|答案(1)|浏览(122)

我正在尝试使用python连接db2,但是我不知道如何正确设置securityMechanism=13属性,你能告诉我如何做吗?

import jaydebeapi

conn_src = jaydebeapi.connect(
    'com.ibm.db2.jcc.DB2Driver',
    'jdbc:db2://host:port/dbname',{"encryptionAlgorithm":"2",'securityMechanism':'13', 'user':'username',"password":'pass'},'',
)

cursor=conn_src.cursor()

错误消息:
com.ibm.db2.jcc.am.SqlExceptionPyRaisable:com.ibm.db2.jcc.am.SqlException:[jcc][t4][10441][12439][3.69.66]加密算法只能使用安全机制ENCRYPTED_PASSWORD_SECURITY和ENCRYPTED_USER_AND_PASSWORD_SECURITY设置。错误代码= -4450,SQLSTATE=空
我很乐意使用ibm_db,但是我没有找到设置securityMechanism=13的方法。

k2arahey

k2arahey1#

尝试通过Jaydebeapi连接时收到相同的错误,但当我尝试与ibm_db_dbi连接时,它工作正常,没有任何错误。
下面的脚本运行良好,无需明确提及“securityMechanism”。


# Header

from ibm_db_dbi import connect

# Connection string

conn_src = connect("DATABASE=<DB_Name>;
                    HOSTNAME=<Host_Name>;
                    PORT=50000;PROTOCOL=TCPIP;
                    UID=<username>;PWD=<password>;", "", "")

相关问题