我已经用asp.net创建了一个网站,当我使用visual studio开发服务器运行它时,一切运行正常,但是当我试图通过IIS服务器运行它时,网站主页加载,但它无法与数据库服务器建立连接
<add connectionString="Data Source=ASHUTOSH-PC\SQLEXPRESS;Initial Catalog=CloudStorage;Integrated Security=True" name="connectionStr"/>
</connectionStrings>这在visual studio开发服务器上工作得很好,但在IIS上就不行了。请帮帮忙
发布于 2013-03-10 22:58:29
由于您使用的是Integrated Security=True,因此您将使用应用程序池标识连接到数据库。运行Cassini时,您使用自己的凭据。您应该使用有权登录和查询SQL Server的用户设置应用程序池标识。
发布于 2013-03-10 22:59:21
来自MSDN
当您使用ASP.NET 开发服务器运行页面时,该页面将在当前用户帐户的上下文中运行。例如,如果您以管理员级别的用户身份运行,则在ASP.NET Development Server中运行的页将具有管理员级别的权限。相比之下,IIS中的,ASP.NET 默认情况下在特殊用户(ASPNET或网络服务)的上下文中运行,该用户通常具有有限的特权。ASPNET或网络服务帐户是服务器计算机(非域帐户)的本地帐户,这限制了对其他计算机上资源的访问。
数据库访问
使用ASP.NET Development Server时,通常可以依靠Windows集成身份验证来访问SQL Server。但是,当同一页在IIS中以ASPNET或NETWORK SERVICES帐户运行时,该页是在本地用户的上下文中运行的,您通常必须对该页进行配置,才能使用包含有关用户和密码的信息的连接字符串。有关详情,请参阅Accessing SQL Server from a Web Application和ASP.NET Security Architecture。
https://stackoverflow.com/questions/15323450
复制相似问题