MSSQL04: SQLserver的用户权限管理

情景

我的服务器有很多库,我新建一个用户【MyTest】(密码也是MyTest),这个用户只拥有【Test】库的控制权。

一、创建账号

使【MyTest】用户可以连上服务器

sql 复制代码
-- 创建SQL Server身份验证的登录名
CREATE LOGIN MyTest 
WITH PASSWORD = 'MyTest',
CHECK_POLICY = OFF,  -- 根据你的安全策略调整
DEFAULT_DATABASE = Test;  -- 设置默认数据库为Test

二、创建用户并授权

使【MyTest】用户可以连上【Test】库,并且拥有增删改权限

sql 复制代码
-- 切换到Test数据库
USE Test;
-- 在Test数据库中创建用户并映射到登录名
CREATE USER MyTest FOR LOGIN MyTest;
sql 复制代码
-- 授予用户在Test数据库中的db_owner权限
-- 这会给予完全控制权(包括查看、修改、删除等所有权限)
ALTER ROLE db_owner ADD MEMBER MyTest;

结果:【MyTest】用户只可以连接【Test】库,并拥有该库的控制权限

三、权限限制

1.权限拒绝

sql 复制代码
-- 切换数据库
USE Test;
-- 拒绝【MyTest】用户 对 Student_2024 表的 INSERT、UPDATE、DELETE 权限
DENY INSERT, UPDATE, DELETE ON dbo.Student_2024 TO MyTest;
GO

2.权限允许

sql 复制代码
-- 切换到目标数据库
USE Test;
-- 授予【MyTest】用户 对 Student_2024 表的 INSERT、UPDATE、DELETE 权限
GRANT INSERT, UPDATE, DELETE ON dbo.Student_2024 TO MyTest;
相关推荐
晓子文集25 分钟前
Tushare接口文档:期货日线行情(fut_daily)
大数据·数据库·金融数据·量化投资·tushare
WA内核拾荒者1 小时前
WhatsApp 账号异常检测的自动化告警系统设计
数据库·python·自动化
龙仔7254 小时前
人大金仓OS_Core数据库自动备份实施笔记(银河麒麟Linux)
linux·数据库·笔记·备份·人大金仓
sunxr.2275 小时前
Mysql-----最后一次作业
数据库·mysql
普通网友5 小时前
Python FastAPI 异步数据库管理
数据库·fastapi
晓子文集5 小时前
Tushare接口文档:期货合约信息表(fut_basic)
大数据·数据库·金融·金融数据·量化投资
三言老师6 小时前
CentOS7.9:Redis‑Cluster集群部署结构化实战教程
linux·运维·服务器·数据库
旺仔学长 哈哈6 小时前
Spring Boot 智能停车场管理系统---附源码+数据库文档
数据库·spring boot·后端·智能停车场
ClickHouseDB7 小时前
ClickHouse托管Postgres:OLTP+OLAP,新能力解锁最佳数据平台
java·前端·数据库
数智化管理手记7 小时前
主数据重复、错漏频发?一站式主数据管理平台如何落地?
大数据·运维·数据库·人工智能·数据挖掘