我想将登录用户(即TestUser
)映射到已创建的数据库(即JIRADB
),但在执行以下查询后,JIRADB
中未添加任何用户。
请参阅提供的图像链接,我希望在执行查询后检查JIRADB。
有人可以帮助我完成这项任务的确切查询吗?
以下是我目前尝试的代码: -
USE [JIRADB]
GO
CREATE LOGIN TestUser WITH PASSWORD="sauser123', DEFAULT_DATABASE=[JIRADB], CHECK_EXPIRATION=OFF, CHECK_POLICY=ON
GO
答案 0 :(得分:0)
仅仅创建登录还不够,登录需要数据库中的用户以及映射到登录的用户。
USE [master]
GO
CREATE LOGIN TestUser WITH PASSWORD="sauser123', DEFAULT_DATABASE=[JIRADB], CHECK_EXPIRATION=OFF, CHECK_POLICY=ON
GO
USE [JIRADB]
GO
CREATE USER [TestUser] FOR LOGIN [TestUser]
GO
--Optional, add the user to database roles if required
ALTER ROLE db_datareader ADD MEMBER [TestUser]
GO
你会注意到我在那里也有一个alter role语句,好像你只是在数据库中创建一个用户,它只是一个public角色的成员,如果你需要任何其他权限你必须添加用户使用数据库角色,或明确为其分配权限。