首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用带有'Windows凭据'的Linux上的python连接到MS SQL Server

作为一个云计算领域的专家,我可以帮助您解决这个问题。

首先,要在Linux上使用Python连接到MS SQL Server,需要使用一个库来实现。一个常用的库是pyodbc。您可以使用以下命令安装它:

代码语言:txt
复制
pip install pyodbc

接下来,您需要安装一个ODBC驱动程序来连接到MS SQL Server。您可以使用FreeTDS驱动程序,它是一个开源的驱动程序,可以在Linux上使用。您可以使用以下命令安装它:

代码语言:txt
复制
sudo apt-get install freetds-dev freetds-bin

然后,您需要配置/etc/freetds/freetds.conf文件,以便它指向您的MS SQL Server。以下是一个示例配置:

代码语言:txt
复制
[global]
    tds version = 7.0

[myserver]
    host = myserver.example.com
    port = 1433
    tds version = 7.0

接下来,您可以使用以下代码来连接到MS SQL Server:

代码语言:python
代码运行次数:0
复制
import pyodbc

server = 'myserver.example.com'
database = 'mydatabase'
username = 'myusername'
password = 'mypassword'

cnxn_string = f"DRIVER={{FreeTDS}};SERVER={server};DATABASE={database};UID={username};PWD={password}"

cnxn = pyodbc.connect(cnxn_string)

cursor = cnxn.cursor()

cursor.execute("SELECT * FROM mytable")

row = cursor.fetchone()
while row:
    print(row)
    row = cursor.fetchone()

请注意,您需要将myserver.example.commydatabasemyusernamemypassword替换为您自己的MS SQL Server的详细信息。

最后,如果您想要在Linux上使用Windows凭据,您可以使用winewinbindwine是一个兼容层,可以让您在Linux上运行Windows应用程序。winbind是一个身份验证和授权服务,可以让您在Linux上使用Windows凭据。您可以使用以下命令安装它们:

代码语言:txt
复制
sudo apt-get install wine winbind

然后,您可以使用以下命令来配置winbind

代码语言:txt
复制
sudo nano /etc/samba/smb.conf

[global]部分中,您需要添加以下行:

代码语言:txt
复制
netbios name = MYDOMAIN
workgroup = MYWORKGROUP
security = domain

然后,您需要重启winbind服务:

代码语言:txt
复制
sudo service winbind restart

现在,您可以使用以下代码来连接到MS SQL Server,并使用Windows凭据进行身份验证:

代码语言:python
代码运行次数:0
复制
import pyodbc

server = 'myserver.example.com'
database = 'mydatabase'
trusted_connection = 'yes'

cnxn_string = f"DRIVER={{FreeTDS}};SERVER={server};DATABASE={database};Trusted_Connection={trusted_connection}"

cnxn = pyodbc.connect(cnxn_string)

cursor = cnxn.cursor()

cursor.execute("SELECT * FROM mytable")

row = cursor.fetchone()
while row:
    print(row)
    row = cursor.fetchone()

请注意,您需要将myserver.example.commydatabaseMYDOMAINMYWORKGROUP替换为您自己的MS SQL Server的详细信息和域名。

希望这个答案能够帮助您解决问题。如果您有任何其他问题,请随时告诉我。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python 虚拟环境 Virtualenv 分别在 WindowsLinux 安装和使用

virtualenv 安装和使用 安装 virtualenv 使用 virtualenv 使用 virtualenvwrapper管理环境 Windows 安装环境 Linux 安装环境 报错解决方案...virtualenv 安装和使用 由于 virtualenv 在 Windowslinux 安装和使用有一点点不同,所以需要分别来讲。...使用 virtualenv Linux 上面进入虚拟环境方式跟 Windows 稍微有点不同,可以直接使用命令来进入,比如同样在 Linux 上面的 envs 文件夹下面有个 new_env 虚拟环境...Windows 安装环境 1、Windows 需要安装是virtualenvwrapper-win,直接使用pip命令就可以了: pip install virtualenvwrapper-win...,那么创建虚拟环境会保存到默认地方,不方便管理 - 添加了环境变量之后,需要重启 cmd 窗口,如果是使用 pycharm 也要重启一下才行 Linux 安装环境 1、使用pip命令安装

1.2K10
  • 干货 | 网络安全之渗透实战学习笔记总结

    responder -wrf -I tun0 当用户浏览共享时,将自动会从系统建立网络连接,连接到包含在SCF文件内UNC路径。 Windows将尝试使用用户名和密码对该共享进行身份验证。...这将自动执行,因为SCF文件将强制每个用户使用他们自己凭据接到一个不存在共享。 ./smbrelayx.py -h Target-IP -e ....hashcat -m 3000 -a 3 hash.txt NThash NTLM是现在Windows系统存储密码方式,可以通过转储SAM数据库或使用Mimikatz来获得。...SMB 1.0 / SMB1:在 Windows 2000、Windows XP、Windows Server 2003 和 Windows Server 2003 R2 中使用版本。...该模块利用 Windows 7 和 Windows Server 2008 R2 Microsoft Windows SMB 客户端中拒绝服务缺陷。

    1.7K20

    我所了解内网渗透 - 内网渗透知识大总结

    SPN是服务在使用Kerberos身份验证网络唯一标识符。...SPN扫描主要好处是,SPN扫描不需要连接到网络每个IP来检查服务端口,SPN通过LDAP查询向域控执行服务发现,SPN查询是Kerberos票据行为一部分,因此比较难检测SPN扫描。...Server列表,然后试图用当前域用户登陆每一个SQL Server。...大多数Active Directory管理员使用用户帐户登录到其工作站,然后使用RunAs(将其管理凭据放置在本地工作站上)或RDP连接到服务器运行Mimikatz读取密码,收集密码尝试登录管理员机器一般只要域管理员登录过机器抓取都可以获取域控了...支持操作系统: Windows Server 2003,Windows Server 2008,Windows Server 2003 R2,Windows Server 2008 R2,Windows

    4.2K50

    微软私有云测试01-Windows Server 2016虚拟化新功能概述

    6) Hyper-V管理器改进 备用凭据支持:在老Hyper-V管理器中如果要从本机连接到另外一台Hyper-V服务器,则仅能使用当前主机所使用凭据,无法在连接时手动指定凭据。...当前在Win10和Win2016中,支持在Hyper-V管理器连接到其他主机时手动输入指定凭据,并且可以保存该凭据,以便再次登陆,此功能可以为管理员带来方便,允许管理员使用个人Win10电脑在不切换账户情况下连接到...Server 2012 R2和Windows 8.1运行Hyper-V计算机。...WS-MAN通过端口80接,端口80默认打开。...PowerShell Direct 在Windows Server 2016中,支持物理机直接通过PowerShell连接到虚拟机,即时虚拟机中没有IP地址也可直接使用

    5.7K20

    MSSQL中传统登录用户模型 & 包含数据库用户模型

    传统在传统连接模型中,通过提供由 Windows 进行身份验证用户或组凭据Windows 用户或 Windows 组成员可连接到数据库引擎。...用户也可以同时提供名称和密码,并通过使用 SQL Server 身份验证进行连接。 在这两种情况下,master 数据库必须拥有匹配连接凭据登录名。...在数据库引擎确认了 Windows 身份验证凭据或验证了 SQL Server 身份验证凭据之后,该连接通常会尝试连接到用户数据库。...若要连接到某个用户数据库,登录名必须映射到(即关联)用户数据库中某个数据库用户。 连接字符串还可以指定连接到特定数据库,该数据库在 SQL Server 中为可选但在 SQL 数据库中为必需。...包含数据库用户模型支持 Windows 身份验证和 SQL Server 身份验证。 在 SQL ServerSQL 数据库中均可使用

    16910

    渗透测试神器CobaltStrike使用教程

    CobaltStrike官网:https://www.cobaltstrike.com 环境:Java 设备:WindowsLinux均可(推荐服务端使用Linux服务器) 目录文件和功能介绍:     ...[/path/to/c2.profile] 可选参数 指定C2通信配置文件,体现其强大扩展性 [YYYY-MM-DD] 可选参数 所有payload终止时间 复制 (2)客户端 1.连接到服务端...通过HTML调用其他语言应用组件进行攻击,提供可执行文件。    2.MS Office Macro:生成office宏病毒文件。   ...3.Payload Generator:生成各种编程语言payload(包含C、C#、COM Scriptlet、Java、Perl、Powershell、Python、Ruby、VBA) 4.Windows...上传文件    wdigest                   使用mimikatz转储明文凭据    winrm                     使用WinRM在主机上生成会话

    3.9K20

    Kali Linux 网络扫描秘籍 第五章 漏洞扫描

    有关设置 Windows 系统更多信息,请参阅本书第一章“安装Windows Server”秘籍。 操作步骤 许多不同方法可以用于识别与任何给定NSE脚本相关联功能。...此外,在某些系统,访问共享需要有效凭据,可以使用smb库参数 smbuser和smbpassword指定。我们对这个漏洞感兴趣原因是,在实际被利用之前,必须满足多个因素必须。...首先,系统必须运行涉及操作系统之一(XP,Server 03 SP2,Vista,Server 08或Windows 7)。第二,它必须缺少MS10-061补丁,这个补丁解决了代码执行漏洞。...步骤3,最后一步,使用SSH或Windows身份验证请求扫描设备身份验证凭据。 完成后,访问Profiles选项卡时,可以在先前为空列表中看到新配置文件。...这可以通过使用Scapy简单Python脚本完成,如下所示: #!

    5.5K30

    红队攻击-对RDP常规操作

    增加影子用户 1.1 前言 在红队活动中,红队人员当拿到一个windows服务器往往为了获取更多有用东西或进行一波操作,会开启3389,这时候如果当前用户在线,如果用当前用户账户去,会把session...RDP会话劫持 2.1 前言 在我们拿到主机系统权限时,但是我们没有拿到管理员凭据,增加用户又动静太大,但是我们通过rdp连接记录发现,管理员3天前(3天之内吧,前提是没有更改组策略设置以使用户断开RDP...前提:system权限可以以无凭据方式在不同用户会话之间切换 2.3 无密码劫持 这里我们利用Windows自带Tscon.exe程序来进行RDP劫持,Tscon.exe可以使用户可以连接到系统其他远程桌面会话...\cmd.exe” /f 然后进入rdp连接,按几次F5 Utilman 和粘滞键完全相同,只是使用了trojan utilman.exe,在登录屏幕,按Windows键+ U,您将获得一个cmd.exe..."Restricted Admin Mode",在Windows8.1和Windows Server 2012R2默认开启,Client 也需要支持Restricted Admin mode。

    1.9K30

    攻击本地主机漏洞(

    21.4% 29.4% 20.9% Windows Server 2008 12.2% 29.1% 20.6% 32.7% Windows Server 2012 10.6% 25.6% 28.1%...图10-6显示了此漏洞,在windows 2008 x64 SP2服务器使用windows/local/ms10_092_schelevator Metasploit模块对抗用户流量计会话。...升级” 图10-7 MS10_092 schelevator漏洞攻击代码 凭据转储 图10-7 MS10_092 schelevator漏洞利用代码MITRE ATT&CK矩阵将凭证转储(ATT&CK...为Windows操作系统提供这些凭据几个位置是 组策略首选项组 安全客户经理 当地安全机构机密 本地安全机构子系统服务 服务主体名称 组策略首选项组策略首选项(GPP)早在Windows Server...Active Directory存储两种类型SPN:基于主机,默认情况下是随机,并链接到域内计算机;以及任意,有时链接到域用户账户。

    1.1K10

    Web.Config和Sql Server2005接字符串总结

    使用附加本地数据库文件方式连接到本地SQL Server Express实例 Server=....=myDataBase;User Id=myUsername;Password=myPassword;使用"服务器名/实例名"格式作为Data Source来连接到一个Sql Server服务器一个实例...因为如果有同名数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接对象。   使用本机上SQL Server Express 实例用户实例。...用户实例连接创建了一个新SQL Server 实例。此连接只能是在本地SQL Server 2005实例并且是通过命名管windows验证连接才有效。...Security,“Integrated Security”可以写成“trusted_connection”,为true时,使用当前 Windows 帐户凭据进行身份验证,为false时,需要在连接中指定用户

    2K20

    函数计算 Python 连接 SQL

    python 连接数据库通常要安装第三方模块,连接 MS SQL Server 需要安装 pymssql 。...由于早期版本 pymssql 只提供了 windows wheel 打包,其他平台(如 linux)需要从源码包编译安装,那需要先安装 freetds-dev 包,以提供必要头文件。...函数计算依赖安装需要有个模拟 linux 环境,从前我们推荐使用 fcli shell sbox ,启动一个接近生产环境 docker container 进行依赖安装。...准备测试环境 首先使用 docker 在本机 Mac 电脑下运行一个 SQL Server 2017 服务,并初始化表结构,编辑一个 index.py 测试文件,以验证数据库访问是否成功。...小结 这是一份来迟函数计算使用 sql server 数据库配置文档。当前版本 pymssql 已经不再需要源码安装了。但是 pip 源码包安装方法,对于其他类似的场景也是适用

    1.4K20

    SQLServer 中身份验证及登录问题

    信任特定 Windows 用户和组帐户登录 SQL Server。 已经过身份验证 Windows 用户不必提供附加凭据。...使用 SQL Server 登录时,将跨网络传递 SQL Server 登录名和密码,这样会降低它们安全性 使用 Windows 身份验证时,用户已登录到 Windows,无需另外登录到...这些登录名不能用于连接到 SQL Server 混合模式身份验证 ---- 如果您必须使用混合模式身份验证,则必须创建 SQL Server 登录名,这些登录名存储在 SQL Server中。...SQL Server 提供了在Windows Server 2003 或更高版本运行时 SQL Server 登录Windows 密码策略机制。...SQL Server 可将Windows Server 2003 中使用相同复杂性和到期策略应用于 SQL Server使用密码。

    4.3K30
    领券