IIS中ASP.NET连接SQL Server出错的解决方法
更新时间:2010年03月23日 17:21:33 作者:
在IIS中运行的ASP.NET应用程序其所属用户名为ASPNET的特定用户,其默认权限是无法访问SQL Server的,更不可能访问ASP.NET应用程序的数据库了,因此要在IIS中访问SQL Server就需要给ASPNET帐户赋予相应的权限.
解决连接问题的另一种方法是在IIS中启用SQL Server验证,然后再连接字符串中使用用户ID与密码;或是当ASP.NET应
用程序以另一个Windows用户而非ASPNET运行时,使用ASP.NET impersonation方法。
为了使ASPNET帐户可以访问ASP.NET应用程序的数据库,需要完成以下步骤:
1)启动SQL Server Management Studio,指定SQL Server实例名,以Windows验证模式登录。
2)用grantlogin存储过程把Windows的用户添加到SQL Server数据库中。这个命理将赋予ASPNET帐户连
接SQL Server的权限。注意要用本机的主机名代替命令中的MachineName。
Exec sp_grantlogin 'MachineName\ASPNET'
3)在为ASPNET帐户赋予了链接SQL Server的权限后,还需要为其赋予访问ASP.NET应用程序的数据库的
权限。注意要用ASP.NET应用程序的数据库的名字代替DateBaseName:
USE DateBaseName
Exec sp_grantdbaccess 'MachineName\ASPNET'
4)最后,需要赋予ASPNET访问ASP.NET应用程序的数据库内部对象的权限,如执行存储过程,读取和
修改表等。最简单的方法是为ASPNET帐户分配一个ASP.NET应用程序的数据库的db_owner角色。如果前面的步骤
中已经连接到了ASP.NET应用程序的数据库,输入下面的命令:
Exec sp_addrolemember 'db_owner','achineName\ASPNET'
现在你就可以从Web应用程序以Windows验证模式连接数据库了。
用程序以另一个Windows用户而非ASPNET运行时,使用ASP.NET impersonation方法。
为了使ASPNET帐户可以访问ASP.NET应用程序的数据库,需要完成以下步骤:
1)启动SQL Server Management Studio,指定SQL Server实例名,以Windows验证模式登录。
2)用grantlogin存储过程把Windows的用户添加到SQL Server数据库中。这个命理将赋予ASPNET帐户连
接SQL Server的权限。注意要用本机的主机名代替命令中的MachineName。
Exec sp_grantlogin 'MachineName\ASPNET'
3)在为ASPNET帐户赋予了链接SQL Server的权限后,还需要为其赋予访问ASP.NET应用程序的数据库的
权限。注意要用ASP.NET应用程序的数据库的名字代替DateBaseName:
USE DateBaseName
Exec sp_grantdbaccess 'MachineName\ASPNET'
4)最后,需要赋予ASPNET访问ASP.NET应用程序的数据库内部对象的权限,如执行存储过程,读取和
修改表等。最简单的方法是为ASPNET帐户分配一个ASP.NET应用程序的数据库的db_owner角色。如果前面的步骤
中已经连接到了ASP.NET应用程序的数据库,输入下面的命令:
Exec sp_addrolemember 'db_owner','achineName\ASPNET'
现在你就可以从Web应用程序以Windows验证模式连接数据库了。
相关文章
asp.net ajaxControlToolkit FilteredTextBoxExtender的简单用法
最近写的东西验证比较多,尤其是数字验证,无意中发现这个控件,有点儿意思。记录一下2008-11-11
利用noesis.Javascript开源组件.Net中执行javascript脚本
利用Noesis.Javascript开源组件可以做到在.net中执行js脚本,同时js脚本也能调用C#函数。这个组件的获得方式:在NuGet中输入搜索"Noesis"就能找到,我们来做个搜索功能:用户能够在textbox中输入js脚本来筛选list记录2013-12-12
使用 ServiceStack.Text 序列化 json的实现代码
今天发篇文章总结下自己使用 ServiceStack.Text 来序列化 json。它的速度比 Newtonsoft.Json 快很多,在测试时发现比 fastJson 还快些2013-06-06
详解ASP.NET-----Repeater数据控件的用法总结
本篇文章主要介绍了ASP.NET--Repeater数据控件的用法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。2016-11-11
asp.net 获取Datalist中Checkbox的值的小结
最近开发过程中遇到一个小问题,要获取checkbox的值,在网上搜索了一下,发现基本上都是用JS实现的,现在我将自己的做法记录一下,以便以后继续使用。2010-04-04


最新评论