我正在尝试在我们的客户端-服务器应用程序上设置'单点登录'身份验证。通过使用第三方应用程序,我们能够根据AD对用户进行身份验证,以便在登录Sybase/SAP iSQL工具时连接活跃用户。
当试图通过数据库绘制器中的PowerBuilder建立相同的连接时,我们无法获得正确的连接:
SQLCA.DBMS = "ADAPTIVE SERVER ENTERPRISE"
SQLCA.Database = "TEST_DB"
SQLCA.ServerName = "ASETEST"
SQLCA.LogId = "AGL027"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Sec_Cred_Timeout=100,Sec_Network_Auth=1,Host='COMPUTERNAME',Sec_Mechanism='KERBEROS',Sec_Server_Principal='DBCOMPUTERNAME.DOMAIN.COMPANY.net'"
有人知道我可能在连接字符串的DBParm部分丢失了什么吗?创建ODBC连接就像创建iSQL一样简单。
尝试在PowerBuilder内部连接时的错误信息是:"连接否认。尝试设置cs_sec_echanism连接属性失败。"
嗨,我删除了'Sec_Mechanism'参数,然后能够获得我的连接。问题解决了!
SQLCA.DBMS = "ADAPTIVE SERVER ENTERPRISE"
SQLCA.Database = "TEST_DB"
SQLCA.ServerName = "ASETEST"
SQLCA.LogId = "AGL027"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Sec_Cred_Timeout=100,Sec_Network_Auth=1,Host='COMPUTERNAME',Sec_Server_Principal='DBCOMPUTERNAME.DOMAIN.COMPANY.net'"