数据库概论第六章安全性控制_第1页
数据库概论第六章安全性控制_第2页
数据库概论第六章安全性控制_第3页
数据库概论第六章安全性控制_第4页
数据库概论第六章安全性控制_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库概论第六章安全性控制主体客体权限加密审计统计数据库安全隐私保护主体主体(principal):是可以授予权限以访问特定数据库对象的对象,包括登录用户、角色、应用程序主体范围Windows级别的主体:Windows域用户帐号/组、本地用户帐号/组,基于Windows身份验证SQLServer级别的主体:SQLServer级别的登录名和固定服务器角色数据库级别的主体:数据库用户、数据库角色、应用程序角色Windows级别的主体创建Windows登录名createloginlogin_namefrom

windowscreatelogin[ljchen-PC\SQLUser]from

windows删除Windows登录名droploginlogin_name拒绝和允许Windows用户访问SQLServerdenyconnectSQLtologin_namegrantconnectSQLtologin_nameWindows级别的主体查看Windows登录名sys.server_principalsselect name,type,sid,principal_idfrom

sys.server_principalswhere type_desc=‘WINDOWS_LOGIN’SQLServer级别的主体创建SQLServer登录名createloginlogin_namecreatelogin sweetHeartwithpassword =‘123456’

default_database

=‘demoDB’查看SQLServer登录名select name,type,sid,principal_idfrom

sys.server_principalswhere type_desc=‘SQL_LOGIN’数据库级别的主体创建SQLServer数据库用户createuseruser_namecreateuser Carefullyforlogin

[ljchen-PC\SQLUser]withdefault_schema

=Finance删除数据库用户:dropuser报告数据库用户信息:sp_helpuser角色角色是一组相关权限的结合,即将多个不同的权限集合在一起就形成了角色用户权限用户权限角色角色角色添加登录名到固定服务器角色:sp_addsrvrolemember从固定服务器角色删除登录名:sp_dropsrvrolemembersp_addsrvrolemember‘sweetHeart’,‘sysadmin’查看SQLServer固定服务器角色select namefrom

sys.server_principalswhere type_desc=‘SERVER_ROLE’publicsysadminsecurityadminserveradminsetupadminprocessadmindiskadmindbcreatorbulkadmin角色添加用户名到数据库角色:sp_addrolemember从数据库角色删除用户名:sp_droprolememberexecsp_addrolemember‘db_datawriter’,‘Carefully’查看SQLServer固定数据库角色sp_helpdbfixedrole查看角色成员sp_helprolemember客体客体:也称安全对象(securable)服务器范围:登录名、数据库和端点数据库范围:数据库用户、角色、架构架构范围:各种对象,如表、视图、函数、存储过程等权限权限(permission):允许主体在安全对象上执行操作权限的转授和回收允许用户把已获得的权限转授给其他用户,也可以把已授给其他用户的权限再回收上来权限图结点是用户,根结点是DBA,有向边Ui→Uj,表示用户Ui把某权限授给用户Uj一个用户拥有权限的充分必要条件是在权限图中有一条从根结点到该用户结点的路径权限DBAU1U2U3U4U5DBAU1U2U3U4U5DBAU2U3DBAU2U3DBAU2U3DBAU2U3权限报告可用权限:sys.fn_builtin_permissionsselect class_desc,permission_name, covering_permission_name, parent_class_desc, parent_covering_permission_namefrom sys.fn_builtin_permissions(‘object’)权限授权命令grant

权限on

对象名to

{用户[,用户]…|public}[withgrantoption]

表级权限包括:select,update,insert,delete,index,alter,drop,resource等以及它们的总和all,其中对select,update可指定列名

withgrantoption表示获得权限的用户可以把权限再授予其它用户为什么需要references权限?权限回收权限revoke

权限on

对象from

{用户[,用户]…|public}

收回权限时,若该用户已将权限授予其它用户,则也一并收回。授权路径的起点一定是DBA示例

grant

select,insert

onStoLiming withgrantoption revoke

insert

onSfromLiming当前用户declare @usrchar(30)set @usr=user

select 'Thecurrentuseris:'+@usrselect *from Swhere SNAME=user实现精细存取控制普通员工只能查看自己的记录部门经理可以查看他所管理的员工人力资源代表可以查看所有员工审计审计就是对指定用户在数据库中的操作情况进行监控和记录,用以审查用户的相关活动数据被非授权用户删除,用户越权管理,权限管理不正确,用户获得不应有的系统权限等监视和收集关于指定数据库获得的数据哪些表经常被修改,用户共执行了多少次I/O操作等,为优化提供依据审计:SQLServer服务器审核createserverauditMyServerAudittofile…服务器审核规范createserverauditspecificationMyServerAuditSpe

forserverauditMyServerAuditalterserverauditspecificationMyServerAuditSpe

add(SERVER_PRINCIPAL_CHANGE_GROUP)审计:SQLServer数据库审核规范createdatabaseauditspecificationMyDBAudit forserverauditMyServerAuditalterdatabaseauditspecificationMyDBAudit add(SELECTONS)查看审核历史select event_time,succeeded,statementfrom sys.fn_get_audit_file(…)加密加密短语加密加密数据encryptByPassPhrase({'passphrase','cleartext'}

select encryptByPassPhrase('hello','whoami')0x0100000021D68E2E078E3EA6752239788B69D8B9BF1AD542A7C9774C9CAF66304F215F49还原数据decryptByPassPhrase({'passphrase','ciphertext'}select decryptByPassPhrase('hello',0x0100000021D68E2E078E3EA6752239788B69D8B9BF1AD542A7C9774C9CAF66304F215F49)0x77686F20616D2069非对称密钥加密createasymmetrickeymyAsym_keyinsertintoemp(ename,salary) values(‘tom’,EncryptByAsymkey(Asymkey_ID(‘myAsym_key’),100000000)selectDecryptByAsymkey( Asymkey_ID(‘myAsym_key’),salary)fromempwherename=‘tom’对称密钥加密createsymmetrickeymySym_keyinsertintoemp(ename,salary) values(‘tom’,EncryptBykey(Key_GUID(‘mySym_key’),100000000)selectDecryptByKey( Key_GUID(‘mySym_key’),salary)fromempwherename=‘tom’SQL注入认证过程发出的查询语句 SELECT*FROMusers WHEREusername=‘jake’ andPASSWORD=‘jakespasswd’.攻击者篡改这个SQL语句 SELECT*FROMusers WHEREusername=‘jake’and(PASSWORD=‘jakespasswd’or‘x’=‘x’).视图授权Tom只有察看职工平均工资的权限createviewavg_salas (selectavg(sal) fromPROF)grantSELECTonavg_salto‘Tom’资源控制:OracleCPU使用时间限制 CPU_PER_SESSION逻辑读个数限制 LOGICAL_READS_PER_SESSION用户会话限制 SESSION_PER_USER会话空闲时间限制 IDLE_TIME会话可持续时间限制 CONNECT_TIME会话专用SGA空间限制 PRIVATE_SGA口令限制 PASSWORD_LIFE_TIM PASSWORD_LOCK_TIME FAILED_LOGIN_ATTEMPTS用户PROFILE统计数据库安全性用户只能查询数据的聚集值,不能访问个体漏洞一个体太少查询选修“古典哲学史”的学生的平均成绩漏洞二多次查询,太多交叠查询n个学生的总成绩为x查询n个学生+A的总成绩为yA的总成绩为y-x统计数据库安全性防范措施查询引用的数据不能少于n两个查询的交不能多于m推出个体信

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论