第十二周学习笔记(数据库安全体系的知识点(思维导图)、说明、示例)

这篇博客详细介绍了数据库安全体系,包括服务器级别的登录名和固定服务器角色,以及数据库级别的用户、角色和密钥。讲解了SQL Server中Windows和SQL Server登录名的区别,GRANT、REVOKE和DENY的权限管理,以及如何创建和管理非对称、对称密钥。通过示例展示了登录名的创建、角色分配以及权限的授予和回收过程。
摘要由CSDN通过智能技术生成

一.思维导图

二.说明

1.服务器级别所包含的安全对象主要有登录名、固定服务器角色等。其中登录名用于登录数据库服务器,而固定服务器角色用于给登录名赋予相应的服务器权限。SQL Server 中的登录名主要有两种:第一种是Windows登录名,第二种是SQL Server登录名。Windows登录名对应Windows验证模式,该验证模式所涉及的账户类型主要有Windows本地用户账户、Windows域用户账户、Windows组。SQL Server登录名对应SQL Server验证模式,在该验证模式下,能够使用的账户类型主要是SQL Server账户。

2.数据库级别所包含的安全对象主要有用户、角色、对称密钥、非对称密钥、架构等。用户安全对象是用来访问数据库的。如果某人只拥有登录名,而没有在相应的数据库中为其创建登录名所对应的用户,则该用户只能登录数据库服务器,而不能访问相应的数据库。

3.GRANT 在安全系统中创建项目,使当前数据库中的用户得以处理当前数据库中的数据或执行特定的 SQL 语句;REVOKE 删除以前在当前数据库内的用户上授予或拒绝的权限;DENY拒绝授予权限。

4.创建非对称密钥和对称密钥时,可以用ALGORITHM选择加密的算法;设置用户密码时可以用HASHBYTES进行散列处理。

三.示例

1.创建Windows登录名


IF SUSER_ID('LocalComputerName\WinUser1') IS NOT NULL       
 DROP LOGIN [LocalComputerName\WinUser1];      
GO       
CREATE LOGIN [LocalComputerName\WinUser1]       
 FROM WINDOWS       
 WITH      
  DEFAULT_DATABASE=master;

2.创建SQL Server登录名

 IF SUSER_ID('SqlLogin1') IS NOT NULL     
 DROP LOGIN SqlLogin1;    
GO     
CREATE LOGIN SqlLogin1      
 WITH     
   PASSWORD='2wsx@WSX'    
  ,CHECK_POLICY=ON   
  ,DEFAULT_DATABASE=master;

3.将SqlLogin1添加至sysadmin角色


EXEC sp_addsrvrolemember 'SqlLogin1', 'sysadmin';

4.将SqlLogin1从sysadmin角色移除

EXEC sp_dropsrvrolemember 'SqlLogin1', 'sysadmin';

5.在数据库HIS中创建用户DbUser1 ,并映射至登录名SqlLogin1



            IF USER_ID('DbUser1') IS NOT NULL  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值