如何解决通过Python Flask模拟Windows用户
我目前正在使用Python Flask开发内部网络应用。该应用程序将连接到内部SQL Server
当我在笔记本电脑上运行该工具时,由于使用我的凭据,因此可以毫无问题地连接到数据,但是在部署时,该应用程序将在Docker化的kubernetes集群上的Nginx上运行。
这样,我希望能够在用户尝试访问数据库时模拟给定的用户帐户。
SQL服务器已通过Windows身份验证进行设置,因此用户/密码将毫无用处。
我当前的连接字符串看起来像这样
params = urllib.parse.quote_plus("DRIVER={SQL Server Native Client 11.0};"
"SERVER=<servername>;"
"DATABASE=<db name>;"
"Trusted_Connection=yes")
有什么想法如何通过/模拟给定的Windows用户帐户给sqlalchemy,以便我可以像执行其他操作一样在SQL Server上管理用户访问级别?
解决方法
请参阅@GordThompson的answer。基本上不能,连接字符串参数UID
和PWD
与trusted_connection=yes
是互斥的。
我也鼓励您重新考虑数据库连接设计。根据您的描述,您的应用将必须管理每个用户的数据库连接。相反,请尝试从您的应用程序建立一个数据库连接,然后通过该应用程序管理对数据库资源的用户特权/权限。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。