无法使用用户

时间:2015-07-04 19:15:47

标签: sql sql-server asp.net-mvc model-view-controller

使用Entity Framework 6从我的ASP.NET MVC 4应用程序中使用数据库用户连接到SQL Server 2014时遇到问题。

如果我使用

<add name="CONNECTION" 
     connectionString="Data Source=SERVER;Initial Catalog=DATABASENAME;Integrated Security=True" 
     providerName="System.Data.SqlClient" />

然后一切正常,但如果我尝试使用我的用户就无法连接:

<add name="CONNECTION" 
     connectionString="Data Source=SERVER;Initial Catalog=DATABASENAME;User Id=USERNAME;Password=PASSWORD;"
     providerName="System.Data.SqlClient" />

我不认为连接字符串是错误的或我的设置,因为我可以使用没有安全性连接,所以我认为问题在于数据库上的用户。

用户列在SSMSSecurity > Logins下,并映射到数据库的相同用户名,默认架构为db_owner

用户也在Database > Security > Users中列出,名称相同,并在自有架构和成员资格下设置为db_owner

我尝试使用以下脚本重新设置密码:

ALTER LOGIN yoursqllogin WITH PASSWORD = 'newpassword' 

我还使用了对数据库中的孤立用户进行了检查,并使用:

EXEC sp_change_users_login 'Report'

但没有人上来。任何人都可以建议任何尝试解决的事情吗?

2 个答案:

答案 0 :(得分:3)

这是一个非常常见的问题,通常很容易修复。

SQL Server Management Studio 中,选择您的服务器,安全登录,然后右键单击您的问题用户,然后选择“属性”。

现在,选择User Mapping选项卡,单击您的数据库(&#34; Test&#34;,在下面的示例中),并查看该用户对该数据库的权限。

SQLServer

在此示例中,我的用户拥有一些权限,但不具有db_datareaderdb_datawriter权限。

或者,换句话说,SQL Server将允许此用户连接,但如果他们尝试在数据库中读取或写入任何内容,则会引发错误。

希望这有帮助!

答案 1 :(得分:1)

感谢您的建议伙伴,原来Dan Guzman遇到了问题,我需要通过转到服务器属性&gt;将我的服务器设置为Windows和sql server身份验证。安全&gt; SQL Server和Windows身份验证模式。感谢您的支持。