gpt4 book ai didi

.net - 使用计算机名而不是用户名的 SQL 集成安全性

转载 作者:行者123 更新时间:2023-12-03 12:10:32 24 4
gpt4 key购买 nike

我正在尝试使用同一网络上的 SQL Express 实例,向我的域用户进行身份验证。它适用于 SSMS 中的 Windows 身份验证。我验证了我可以使用 MyDB 数据库,包括编辑表。

但是,当我尝试以下连接字符串时:
Server=ipaddress\SQLExpress; Database=MyDB; Integrated Security=SSPI;
我得到一个错误:
Cannot open database "MyDB" requested by the login. The login failed.
Login failed for user 'ROMANIA\MONSTER2$'

问题是 MONSTER2 是我的计算机名称,而不是我的用户名。 (罗马尼亚是域。)我做错了什么?

[编辑] 我忘记了一些可能相关的内容:我正在尝试从我的计算机上运行的网络服务打开连接。

最佳答案

您的 Web 服务正在 NT AUTHORITY\Network Service 下运行安全上下文。这将导致进程访问网络资源时使用主机的机器账号在域中。

您必须将 Web 服务配置为使用您的域身份运行。

如果您在 IIS 中托管您的 Web 服务,您可以通过 impersonation 执行此操作。 .下面是一个例子:

<configuration>
<system.web>
<identity
impersonate="true"
userName="ROMANIA\username"
password="********" />
</system.web>
</configuration>

关于.net - 使用计算机名而不是用户名的 SQL 集成安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6761596/

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