繁体   English   中英

Asp.net-当我在IIS上运行网站时,数据库登录失败

[英]Asp.net - When I run my website on IIS, Database login fails

在我的网站中,我正在使用“ Windows身份验证模式”访问我的sqlserver数据库。 当我使用Visual Studio运行网站时,一切正常。 但是,当我将网站托管在IIS上时,每次都会出现错误消息“数据库登录失败”。

用户“ HAL \\ IUSR_HAL”的登录失败。(HAL是我的网络服务器的名称)

是否应该对数据库属性进行一些修改,以便可以通过IIS登录数据库?

如果您在IIS中使用匿名访问,则需要在连接字符串中为有效的sql用户提供用户ID和密码。

经过研究,我得到了这个问题的答案。

若要通过在IIS上运行的网站访问数据库,应对IIS的IUSR帐户和ASPNET帐户进行身份验证并授权给sqlserver。

(ASPNET帐户是与IIS关联以处理asp.net页的dotnet框架的帐户。)

去做这个:

打开Sqlserver管理工作室。 转到安全。 然后右键单击“登录”并选择“新登录”。 在登录名上按“搜索”。 然后点击“高级”按钮。 然后按“立即查找”按钮。 然后从列表中选择上述两个帐户。(一次选择一个),然后按确定。 选择登录名后,转到其“用户映射”选项。 然后从那里选择数据库并检查所需的权限。

现在您已完成所有工作。 按确定。

您可以从您的网站访问数据库。

在您的web.config文件中查找

<system.web> 

并添加:

<identity impersonate="true" /> 

查看以下链接:

http://msdn.microsoft.com/en-us/library/ms998292.aspx

希望这可以帮助。

谢谢,拉贾

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM