MSSQL SERVER下创建或删除用户并授予权限

MSSQL SERVER下创建或删除用户并授予权限

创建用户,并授予其对数据库AuditDB中以dbo架构下所有表及存储过程的所有权限

1、在主数据库中创建登录名(实例级)

Use master;
go
Create login audit with password ‘你的超强口令’;
go

2、切换到目标数据库(特定数据库级)

Use AuditDB;
go

3、创建数据库用户并映时

Create user audi for login audit; 
go

4、授予对 dbo 架构的选取、插入、更新、删除权限

GRANT select,insert,update,delete on SCHEMA::dbo to audit; 
(也可以是具体的数据表, 如:dbo.units或 dbo.users) 

5、授予存储过程的执行叔限

GRANT EXECTE dbo.sp_UserLogin To audit;

将bo.spuserlog过程的执行权限授予用户audit
授予架构级别的执行权限(如果有多个存储过程)

GRANT EXECUTE ON SCHEMA::[dbo] TO [你的数据库用户名];

6、查看所有登录名:

Select name 
from sys.server_principals 
where type_desc = ’SQL_LOGIN’;

7、查看数据库所有用户

use additDB; select name 
from sys.dba_data_policies 
where type_desc = ‘SQL_USER’;

8、查看用户权限

use auditDB;
Exec sp_helprotect @username=’你要查的用户名’;

9、修改用户密码

ALTER LOGIN [你的登录名] With PASSWORD="你的新密码";

10、删除用户(先删除数据库用户再删除登录名)

use anditDB; drop USER [你的用户名]; 
use master ; drop LOGIN [你的登录名]

如遇到删除用户时提示 “ 数据库主体在该数据库中拥有 架构,无法删除。“

则可以 转移架构所有权

USE [你的数据库名];
GO
ALTER AUTHORIZATION ON SCHEMA::[架构名] TO dbo;  ---此处架构名默认状态下为: db_owner
GO
posted @ 2026-03-17 10:02  冀未然  阅读(76)  评论(0)    收藏  举报