1. MSSQL添加新的管理员拓展管理范围
对于一个组织,对数据库的安全性要求非常高,因此要有一个完整的权限控制体系。通常,系统管理员需要处理多种类型的数据,进行备份和还原等基本操作。在某些情况下,需要扩展管理员的管理范围,这就需要添加新的管理员。
2. 添加新的管理员
2.1 创建新的系统管理员账户
在SQL Server中,可以使用以下命令创建新的系统管理员账户。
USE [master]
GO
CREATE LOGIN [NewAdmin] WITH PASSWORD=N'password', DEFAULT_DATABASE=[master], CHECK_POLICY=OFF
GO
EXEC sys.sp_addsrvrolemember @loginame = N'NewAdmin', @rolename = N'sysadmin'
GO
在这个示例中,创建了一个名为“NewAdmin”的新管理员账户,并授予了sysadmin角色(即系统管理员角色)。这个账户的默认数据库是“master”。
2.2 修改现有管理员账户
如果希望替换现有的管理员账户而不是添加新的管理员账户,则可以修改现有的管理员账户。可以使用下面的命令将现有的登录名“OldAdmin”更改为“NewAdmin”。
USE [master]
GO
ALTER LOGIN [OldAdmin] WITH NAME=[NewAdmin]
使用此命令,可以更改现有的管理员账户名,“OldAdmin”现在已被命名为“NewAdmin”。
3. 扩展管理范围
现在,我们已经创建了一个新的管理员账户或修改了现有的管理员账户,下一步是将其添加到相应的角色中,以扩展管理范围。
3.1 添加新的登录角色
登录角色是一组权限,可以授予登录名权限。可以使用以下命令创建新的登录角色。
USE [master]
GO
CREATE ROLE [NewRole]
GO
在这个示例中,创建了名为“NewRole”的新登录角色。
3.2 授权新的登录角色
现在,将新的登录角色分配给要管理的数据库,并授予需要的权限。
USE [DatabaseName]
GO
CREATE USER [NewRole]
GO
EXEC sp_addrolemember N'db_datareader', N'NewRole'
GO
EXEC sp_addrolemember N'db_datawriter', N'NewRole'
GO
GRANT EXECUTE TO [NewRole];
GO
在这个示例中,我们创建了一个名为“NewRole”的新用户,并授予了读取和写入权限(db_datareader和db_datawriter)。还授予了执行权限。
4. 总结
扩展管理员的管理范围可以放心地授权给特定的系统管理员,使其能够处理多种类型的数据和数据库管理任务。添加新管理员或者修改现有管理员账户,还需要为新的管理员账户授权创建一个新的登录角色,并授予所需的权限。这些步骤可以快速实现并增强数据库的安全性,以确保它们的数据得到妥善保护。