分享交流
合作共赢!

SQL Server用户创建、授予权限、删除等方法总结

一、创建用户

1、指定用户即将登陆使用的数据库

USE [DatabaseName]

2、创建SQL Server登陆帐户

create login [UserName] with password='[password]', default_database=[DatabaseName] ;

3、创建数据库用户

create user [UserName] for login [UserName] with default_schema=dbo

二、授予权限/收回权限

授予权限

1、授予所有权限

–通过加入数据库角色,赋予数据库用户“db_owner”权限

exec sp_addrolemember 'db_owner', '[UserName]'

2、授予用户只具备查询表的权限

SELECT 'GRANT  SELECT ON '+ '['+ name+']' +'to DengK' FROM  sys.tables WHERE NAME LIKE 'WB%';

3、授予用户对表的所有权限

–授予角色dba对HR.Employees表的所有权限

GRANT ALL ON HR.Employees to jira

4、授予用户建表权限

GRANT CREATE TABLE to jira

参考:

GRANT INSERT ON TableA TO RoleA
GO
EXEC sp_addrolemember RoleA, 'UserA' -- 用户UserA将有TableA的INSERT权限
GO

REVOKE INSERT ON TableA FROM RoleA -- 用户UserA将没有TableA的INSERT权限,收回权限
GO

GRANT INSERT ON TableA TORoleA --重新给RoleA以TableA的INSERT权限
GO 
-- 虽然用户UserA所在RoleA有TableA的INSERT权限,但UserA本身被DENY了,所以用户UserA将没有TableA的INSERT权限。
DENY INSERT ON TableA TO UserA

收回权限

1、收回权限

revoke all on HR.Employees from jira

2、拒绝安全账户dba对HR.Employees表的select权限

deny select on HR.Employees to jira

3、重新授权

grant select on HR.Employees to jira

三、删除数据库用户

1、删除数据库用户:

 alter user [UserName]  with default_schema= dbo

2、删除 SQL Server登陆帐户:

drop user [UserName]

3、从数据库中删除安全账户,failed

EXEC sp_revokedbaccess 'jira'

4、删除角色 r_test,failed

EXEC sp_droprole 'jira'

5、删除登录 l_test,success

EXEC sp_droplogin 'jira'

–recoke和deny的区别
–revoke:收回之前被授予的权限
–deny:拒绝给当前数据库内的安全账户授予权限并防止安全账户通过其组或角色成员资格继承权限。
–deny是将来都不许给,revoke是收回已经给予的。
deny 和revoke 的区别:
revoke收回权限后,可以从其他角色中重新继承权限
deny拒绝权限后,不可以从其他角色继承权限。

四、其他操作

1、禁用登录用户

alter login jira disable

2、启用登录账户

alter login jira enable

3、登录账户改密码

alter login jira with password='aabb'

4、登录账户改名

alter login jira with name=jiar

5、数据库用户改名

alter user jira with name=jiar

6、更改数据库用户 DEFAULT_SCHEMA

alter user jira with default_schema=stg

7、检查数据库中孤立用户
exec sp_change_users_login @action=’Report’
8、对孤立用户连接到现有的登录名

exec sp_change_users_login 
@action='update_one', 
@usernamepattern='kk', --数据库孤立用户 
@loginname='kk'; --关联到sql server登录名 
go
赞(2) 打赏
未经允许不得转载:琼杰笔记 » SQL Server用户创建、授予权限、删除等方法总结

评论 抢沙发

评论前必须登录!

 

分享交流,合作共赢!

联系我们加入QQ群

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏