如何在SQL Server 2012中创建可以在连接字符串中使用的新用户?

Nib*_*Pig 25 sql-server-2012

我不确定这是SO还是SU问题.

我刚刚安装了SQL Server 2012.

我创建了一个数据库.

我有一个visual studio 2012项目,我想在我的web配置中使用连接字符串连接到数据库.

由于我只有两个帐户(sa和我的Windows帐户),我想创建一个只能访问这个数据库的新用户.

Google表示,在SSMS中,展开数据库,右键单击Security并转到New User.

但是,当我这样做并尝试创建用户时,我选择带登录的SQL用户,输入用户名和登录名,并得到错误:

'news_login'不是有效登录信息,或者您没有权限

我已经尝试以"sa"身份登录SSMS,以我的Windows帐户登录,并以管理员权限运行SSMS.我尝试过几个不同的用户名,但无济于事.

我注意到没有密码箱,所以我担心我做错了.有什么建议?

sge*_*des 38

在将用户添加到数据库之前,将用户添加到服务器 - 在服务器下,右键单击安全性文件夹,然后以这种方式尝试.然后,您可以向该用户授予适当数据库的权限

  • 这对我有用!只是想添加即使添加了用户,我的SQL登录也行不通.我不得不在服务器属性 - >安全性 - >启用SQL Server和Windows身份验证模式中更改设置.希望别人觉得这很有用. (2认同)

Mat*_*ius 9

这是SQL的方式:

CREATE LOGIN NewUser   
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';  
GO  

  CREATE USER NewUser FOR LOGIN NewUser;  
GO  
Run Code Online (Sandbox Code Playgroud)

编辑:根据@bschipp的评论

另一个不会使密码失效的例子如下

CREATE LOGIN NewUser   
    WITH PASSWORD = 'Uuxwp7Mcxo7Khy$#' CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF;
GO
    CREATE USER NewUser FOR LOGIN NewUser;  
GO  
Run Code Online (Sandbox Code Playgroud)

更多关于您可以在这里阅读的选项.

  • 您还可以设置CHECK_EXPIRATION = OFF,CHECK_POLICY = OFF等标志以停止密码过期或绕过密码策略.有关更多选项,请参阅此处:https://msdn.microsoft.com/en-us/library/ms189751.aspx (5认同)