pyodbc-如何连接ldap身份验证

bpzcxfmw  于 2021-09-08  发布在  Java
关注(0)|答案(0)|浏览(300)

我正在使用python的pyodbc库连接oracle数据库。对非prod服务器的身份验证设置为基本身份验证,因此我的连接字符串运行良好。
最初很难理解和设置正确的驱动程序,但后来成功通过了。下面是用于连接的代码,它在我的其他服务器上运行良好。

import textwrap
import pyodbc
connection_string = textwrap.dedent('''Driver={driver};
            DBQ={hostname}:{port}/{sid};
            UID={username};
            PWD={password};
            Connection Timeout=30;
            Trusted_Connection="yes"
        '''.format(driver = 'Oracle in instantclient_11_2', 
                    hostname = <hostname>, 
                    port = <port>,
                    sid = <sid>,
                    username = <username>,
                    password = <passwd>
                    ))

connection = pyodbc.connect(connection_string)

令我惊讶的是,prod仅通过ldap进行身份验证。我有ldap服务器、上下文和db服务以及凭据。
我尝试创建我的连接字符串作为

connection_string = textwrap.dedent('''Driver={driver};
            DBQ={hostname}:{port}/{sid};
            UID={username};
            PWD={password};
            Connection Timeout=30;
            Authentication=LDAP;
            Trusted_Connection="yes"
        '''.format(driver = 'Oracle in instantclient_11_2', 
                    hostname = <ldap_server>, 
                    port = 389,
                    sid = <db_service>,
                    username = <username>,
                    password = <passwd>
                    ))

对于这一点,我并不感到惊讶,因为我知道这是行不通的。尝试通过许多链接,但无法通过。以前有没有人试过这个,或者请让我知道我错过了什么。
我完全可以使用ldap身份验证在sql developer中连接。由于此服务器上未配置tns listener,我无法使用基本身份验证进行连接。
欢迎在这方面提供帮助。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题