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