我对SQL Server 2005中的ASP.NET帐户感到有点困惑。在我的网站连接字符串中,我使用sa
帐户连接到SQL Server数据库。当我使用Firefox登录我的网站时,我收到错误
用户登录失败:'AccountName'
我在ms支持网站上找到了答案。它提到了3种方法来纠正这种方法,其中一种方法是在SQL Server for ASPNET中授予正确的权限。
我选择public作为Server角色,授予连接数据库的权限并启用登录,我还在用户映射中选择了数据库。我仍然在数据库存储过程中收到权限错误。
我错过了什么?
编辑:我在我的数据库中将ASPNET
设置为db owner,一切正常。如果我只是设置读写,它就不起作用。是不是将ASPNET
帐户设置为db owner是否存在安全风险?
答案 0 :(得分:2)
首先,不要永远从Web应用程序连接SA,这是一个巨大的安全风险。
听起来你的连接字符串搞砸了,它使用的是NT身份验证而不是指定的用户/密码组合。
除非您直接访问表,否则您不需要将应用程序池帐户设置为dbo;而是将其添加到该数据库的公共组中;这样你可以正确地限制它。