gpt4 book ai didi

python - pymssql windows 身份验证

转载 作者:太空狗 更新时间:2023-10-29 17:32:48 30 4
gpt4 key购买 nike

用于支持windows身份验证的pymssql模块。现在好像没有了。尽管在某些地方它仍然表明它应该工作。我一直无法找到这个问题的明确答案,也没有找到解决方案。最相关的链接:

https://groups.google.com/forum/#!topic/pymssql/QDMLTGBNeU0

pymssql 1.0 supported it because it made use of and depended on the MS-provided DLL which was part of the SQL Server client stack. This stack was in charge of handling all of the NTLM negotiation and such. This meant, among other things that it was a Windows-only solution.

我可以模拟多种网络环境,所以我尝试了很多不同的设置。我正在尝试能够使用此脚本通过 Windows 身份验证连接到远程 MSSQL 服务器。这就是问题所在。


根据我的研究,包括上面的链接,有两种方法可以通过 应该 起作用的 pymssql 模块使用 Windows 身份验证。

第一种方法:使用当前用户的凭据:

pymssql.connect(server='server') 
# credentials come from active windows session
# some research shows that a "trusted=True" keyword should be provided.

第二种方法:使用给定的用户凭据:

pymssql.connect(server='server', user=r'domain\user', password='pass') 
# credentials are given in code and somehow converted to a
# windows authentication in the background
# some research shows that a "trusted=True" keyword should be provided.

使用 _mssql 模块也是如此。


注意事项:

  • Python版本:2.7.8
  • 我使用的pymssql版本:2.1.1
  • 用于支持windows认证的pymssql版本:1.x
  • 我测试过(所有 64 位):
    • Windows 7 专业版
    • Windows 7 家庭高级版
    • Windows 服务器 2012
    • Windows 服务器 2012R2

关于该主题的其他问题:

pymssql: How to use windows authentication when running on a non-windows box

Unable to connect using pymssql with windows authentication

https://stackoverflow.com/questions/27692366/mssql-python-windows-authentication

最佳答案

我能够使用 python 2.7.11 64 位、pymssql 2.1.1 win 64、windows 10、sqlserver 2012 和 windows 身份验证解决此问题:

conn = pymssql.connect(server = 'EDDESKTOP', database = 'baseballData')

并在 Sql Server Configuration Manager > Sql Server Network Configuration -> Protocols for MSSQLSERVER-> TCP/IP Enabled 中启用 tcp/ip 连接

关于python - pymssql windows 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29349607/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com