CentOS下SQL Server权限管理实操指南
一 管理思路与分层
二 快速上手 SQL 命令示例
-- 1) 创建 SQL 登录名
CREATE LOGIN AppUser WITH PASSWORD = 'YourStrongP@ssw0rd!';
-- 2) 在目标数据库创建用户并映射
USE SalesDB;
CREATE USER AppUser FOR LOGIN AppUser;
-- 3) 对象级:仅授予对 dbo.Products 的增改查
GRANT SELECT, INSERT, UPDATE ON dbo.Products TO AppUser;
-- 4) 存储过程执行权限
GRANT EXECUTE ON dbo.usp_SubmitOrder TO AppUser;
-- 5) 架构级:只读整个 dbo 架构
GRANT SELECT ON SCHEMA::dbo TO AppUser;
-- 6) 数据库级:只读角色(谨慎使用)
EXEC sp_addrolemember 'db_datareader', 'AppUser';
-- 7) 撤销示例
DENY DELETE ON dbo.Products TO AppUser;
CREATE LOGIN [DOMAIN\DevGroup] FROM WINDOWS;
USE SalesDB;
CREATE USER DevUser FOR LOGIN [DOMAIN\DevGroup];
EXEC sp_addrolemember 'db_datareader', 'DevUser';
SELECT 1;
SELECT TOP 10 * FROM dbo.Products;
EXEC dbo.usp_SubmitOrder @OrderId = 1001;
以上命令覆盖了登录名/用户创建、对象/架构/数据库级授权与撤销、以及内置角色的常用做法。
三 角色与权限设计建议
四 系统层面安全与网络访问控制
sudo firewall-cmd --permanent --add-port=1433/tcp
sudo firewall-cmd --reload
五 常见排错与运维要点