ASP.NET 用户登录失败:'NT AUTHORITY\NETWORK SERVICE'。

5
我正在尝试在远程服务器上发布一个asp.net网站。当我的代码尝试连接数据库时,我得到了问题标题中描述的错误消息。现在,我已经进入SSE 2008的Microsoft SQL Server Management Studio,可以看到登录列表。NT AUTHORITY\NETWORK SERVICE在那里,但我不确定需要更改哪些设置以允许此用户访问数据库。我尝试在我的web.config文件中使用windows登录凭据进行模拟,但这只会带来相同的错误消息,并且显示我的windows用户名而不是NETWORK SERVICE。
我的连接字符串如下所示:
connectionString="Data Source=MECHTRONICRND\SQLEXPRESS;Initial Catalog='C:\Inetpub\aspnettest\App_Data\FLEETMANAGERDB.MDF';Integrated Security=True"
有什么想法吗?
谢谢
--Amr
2个回答

9
感谢您的回复。在查看了这篇教程后,我发现如何允许用户访问数据库。一旦我允许NETWORK SERVICE读写数据库,我的网站就可以使用原始连接字符串正常运行。
--Amr

1
链接失效 - “无法访问此网站/ blog.evonet.com.au的服务器DNS地址无法找到” - Pang

1

你的连接字符串应该是:

"Data Source=MECHTRONICRND\SQLEXPRESS;Initial Catalog=FLEETMANAGERDB;Integrated Security=True"

此外,这是尝试使用 Web 服务器所使用的帐户连接到数据库。您可以将 Web 服务(相应地配置 IIS)作为域用户运行,然后为该帐户创建登录和数据库用户。否则,您将不得不为 Network Service 帐户(在 FleetManagerDB 中)创建数据库用户,这是不推荐的。或者如果您正在模拟自己,可以为自己创建一个数据库用户。


连接字符串中也可以使用 SQL 身份验证和 "user id=myusername;password=mypassword"。但我更喜欢使用身份模拟。 - Rob Gray

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接