温馨提示×

如何在Debian上管理SQL Server用户

小樊
32
2025-12-12 16:51:59
栏目: 云计算

在 Debian 上管理 SQL Server 用户

一 环境准备与连接

  • 安装命令行工具:sudo apt-get update && sudo apt-get install -y mssql-tools unixodbc-dev
  • 连接数据库:sqlcmd -S localhost -U SA -P ‘YourStrongPassword’
  • 如需远程连接,请先确保 SQL Server 允许远程,并开放防火墙端口 1433

二 登录名与数据库用户

  • 创建登录名(实例级)
    • CREATE LOGIN [newlogin] WITH PASSWORD = ‘StrongP@ssw0rd’;
  • 在指定数据库创建用户并映射登录名
    • USE [MyDatabase]; CREATE USER [newuser] FOR LOGIN [newlogin];
  • 修改登录名密码
    • ALTER LOGIN [newlogin] WITH PASSWORD = ‘NewStrongP@ssw0rd’;
  • 删除对象
    • DROP USER [newuser];
    • DROP LOGIN [newlogin];
  • 说明:登录名在实例级,用户在特定数据库内;删除顺序通常为先删数据库用户,再删登录名。

三 角色与权限分配

  • 固定数据库角色(推荐最小权限)
    • ALTER ROLE db_datareader ADD MEMBER [newuser];
    • ALTER ROLE db_datawriter ADD MEMBER [newuser];
    • 如需库级完全控制:EXEC sp_addrolemember ‘db_owner’, ‘newuser’;
  • 对象级权限
    • GRANT SELECT, INSERT, UPDATE, DELETE ON [dbo].[YourTable] TO [newuser];
    • 撤销:REVOKE SELECT ON [dbo].[YourTable] FROM [newuser];
  • 验证权限
    • USE [MyDatabase]; SELECT * FROM sys.database_permissions WHERE grantee_principal_id = USER_ID(‘newuser’);

四 常用运维与安全建议

  • 遵循最小权限原则:优先使用 db_datareader/db_datawriter 等固定角色,谨慎授予 db_owner
  • 强口令策略:为 SA 与业务登录名设置复杂密码,并定期更换。
  • 审计与监控:可启用 SQL Server Audit 记录登录与关键操作,便于合规与追溯。
  • 远程访问:仅在内网或受控网络开放 1433,并使用安全通道(如 TLS/SSL)。

五 图形化管理选项

  • 可使用 SQL Server Management Studio(SSMS) 进行可视化用户与权限管理:连接到实例后,在“Security/Logins”和“Databases/YourDB/Security/Users”中完成创建、映射与授权。

0