访问控制访问控制访问控制访问控制访问控制访问控制访问控制访问控制主讲主讲主讲主讲主讲主讲主讲主讲段云所段云所段云所段云所段云所段云所段云所段云所副教授副教授副教授副教授副教授副教授副教授副教授北京大学计算机系北京大学计算机系北京大学计算机系北京大学计算机系北京大学计算机系北京大学计算机系北京大学计算机系北京大学计算机系doyes@pku.edu.cndoyes@pku.edu.cn安全服务的各个层面安全服务的各个层面安全服务的各个层面安全服务的各个层面•安全服务安全服务安全服务安全服务SecurityServicesSecurityServicesSecurityServicesSecurityServices开放某一层所提供的服务用以保证系统或数据传输足够的安全性根据ISO7498-2,安全服务包括1.实体认证EntityAuthentication2.数据保密性DataConfidentiality3.数据完整性DataIntegrity4.防抵赖Non-repudiation5.访问控制AccessControl访问控制的概念以及分类访问控制的概念以及分类访问控制的概念以及分类访问控制的概念以及分类原始概念原始概念原始概念原始概念——是对进入系统的控制用户标识+口令/生物特性/访问卡一般概念一般概念一般概念一般概念——是针对越权使用资源的防御措施一般分为•自主访问控制•强制访问控制•基于角色的访问控制访问控制的目的和作用访问控制的目的和作用访问控制的目的和作用访问控制的目的和作用是为了限制访问主体用户进程服务等对访问客体文件系统等的访问权限从而使计算机系统在合法范围内使用决定用户能做什么也决定代表一定用户利益的程序能做什么•目的•作用是对需要访问系统及其数据的人进行鉴别并验证其合法身份也是进行记账审计等的前提访问控制与其他安全措施的关系模型访问控制与其他安全措施的关系模型访问控制与其他安全措施的关系模型访问控制与其他安全措施的关系模型引用监视器认证访问控制授权数据库用户目标目标目标目标目标审计访问控制的一般实现机制和方法访问控制的一般实现机制和方法访问控制的一般实现机制和方法访问控制的一般实现机制和方法一般实现机制一般实现机制一般实现机制一般实现机制——•基于访问控制属性——访问控制表/矩阵•基于用户和资源分档“安全标签”——多级访问控制常见实现方法常见实现方法常见实现方法常见实现方法——•访问控制表ACL)•访问能力表Capabilities)•授权关系表userAOwnRWOuserBROuserCRWOObj1访问控制实现方法访问控制实现方法访问控制实现方法访问控制实现方法——访问控制表访问控制表访问控制表访问控制表访问控制实现方法访问控制实现方法访问控制实现方法访问控制实现方法——访问能力表访问能力表访问能力表访问能力表Obj1OwnRWOObj2ROObj3RWOUserASubjectsObjectsS1S2S3O1O2O3Read/writeWriteReadExecute•按列看是访问控制表内容•按行看是访问能力表内容访问控制实现方法访问控制实现方法访问控制实现方法访问控制实现方法——访问控制矩阵访问控制矩阵访问控制矩阵访问控制矩阵访问控制实现方法访问控制实现方法访问控制实现方法访问控制实现方法——授权关系表授权关系表授权关系表授权关系表UserAOwnObj1UserARObj1UserAWObj1UserAWObj2UserARObj2自主访问控制强制访问控制基于角色访问控制访问控制访问控制的一般策略访问控制的一般策略访问控制的一般策略访问控制的一般策略访问控制的策略访问控制的策略访问控制的策略访问控制的策略——自主访问控制自主访问控制自主访问控制自主访问控制特点特点特点特点根据主体的身份和授权来决定访问模式缺点缺点缺点缺点信息在移动过程中其访问权限关系会被改变如用户A可将其对目标O的访问权限传递给用户B,从而使不具备对O访问权限的B可访问O访问控制的策略访问控制的策略访问控制的策略访问控制的策略——强制访问控制强制访问控制强制访问控制强制访问控制特点特点特点特点1.将主题和客体分级将主题和客体分级将主题和客体分级将主题和客体分级根据主体和客体的级别标记来决定根据主体和客体的级别标记来决定根据主体和客体的级别标记来决定根据主体和客体的级别标记来决定访问模式访问模式访问模式访问模式如如如如绝密级绝密级绝密级绝密级机密级机密级机密级机密级秘密级秘密级秘密级秘密级无密级无密级无密级无密级2.其访问控制关系分为其访问控制关系分为其访问控制关系分为其访问控制关系分为上读上读上读上读/下写下写下写下写下读下读下读下读/上写上写上写上写完整性完整性完整性完整性机密性机密性机密性机密性3.通过梯度安全标签实现单向信息流通模式通过梯度安全标签实现单向信息流通模式通过梯度安全标签实现单向信息流通模式通过梯度安全标签实现单向信息流通模式TSSCUTSSCUR/WWR/WRR/WRWRRRR/WR访问控制的策略访问控制的策略访问控制的策略访问控制的策略——强制访问控制强制访问控制强制访问控制强制访问控制MACInformationFlow1.自主式太弱自主式太弱自主式太弱自主式太弱2.强制式太强强制式太强强制式太强强制式太强3.二者工作量大二者工作量大二者工作量大二者工作量大不便管理不便管理不便管理不便管理例1000主体访问10000客体须1000万次配置如每次配置需1秒每天工作8小时就需10000000/3600*8=347.2天访问控制的策略访问控制的策略访问控制的策略访问控制的策略——自主自主自主自主////强制访问的问题强制访问的问题强制访问的问题强制访问的问题访问控制的策略访问控制的策略访问控制的策略访问控制的策略——基于角色的访问控制基于角色的访问控制基于角色的访问控制基于角色的访问控制•角色概念角色概念角色概念角色概念ArolecanbedefinedasasetofArolecanbedefinedasasetofArolecanbedefinedasasetofArolecanbedefinedasasetofactionsandresponsibilitiesactionsandresponsibilitiesactionsandresponsibilitiesactionsandresponsibilitiesassociatedwithaparticularworkingassociatedwithaparticularworkingassociatedwithaparticularworkingassociatedwithaparticularworkingactivity.activity.activity.activity.访问控制的策略访问控制的策略访问控制的策略访问控制的策略——基于角色的访问控制基于角色的访问控制基于角色的访问控制基于角色的访问控制•角色与组的区别角色与组的区别角色与组的区别角色与组的区别组组组组用户集用户集用户集用户集角色角色角色角色用户集用户集用户集用户集权限集权限集权限集权限集访问控制的策略访问控制的策略访问控制的策略访问控制的策略——基于角色的访问控制基于角色的访问控制基于角色的访问控制基于角色的访问控制•角色控制与角色控制与角色控制与角色控制与DACDACDACDACMACMACMACMAC的区别的区别的区别的区别角色控制相对独立角色控制相对独立角色控制相对独立角色控制相对独立根据配置可使某些角根据配置可使某些角根据配置可使某些角根据配置可使某些角色为接近色为接近色为接近色为接近DACDACDACDAC某些角色接近某些角色接近某些角色接近某些角色接近MACMACMACMAC访问控制的策略访问控制的策略访问控制的策略访问控制的策略——基于角色的访问控制基于角色的访问控制基于角色的访问控制基于角色的访问控制•模型模型模型模型基本模型基本模型基本模型基本模型RBAC0RBAC0RBAC0RBAC0角色分级模型角色分级模型角色分级模型角色分级模型RBAC1RBAC1RBAC1RBAC1角色限制模型角色限制模型角色限制模型角色限制模型RBAC2RBAC2RBAC2RBAC2统一模型统一模型统一模型统一模型RBAC3RBAC3RBAC3RBAC3RBAC3RBAC1RBAC2RBAC0访问控制的策略访问控制的策略访问控制的策略访问控制的策略——基于角色的访问控制基于角色的访问控制基于角色的访问控制基于角色的访问控制•基本模型基本模型基本模型基本模型RBAC0RBAC0RBAC0RBAC0定义定义定义定义TheTheTheTheRBAC0RBAC0RBAC0RBAC0Modelhasthefollowingcomponents:Modelhasthefollowingcomponents:Modelhasthefollowingcomponents:Modelhasthefollowingcomponents:U,R,PU,R,PU,R,PU,R,P,,,,andandandandSSSS(users,roles,permissions,andrespectively(users,roles,permissions,andrespectively(users,roles,permissions,andrespectively(users,roles,permissions,andrespectivelysessionsessionsessionsession))))PAPPAPPAPPAP╳╳╳╳R,R,R,R,amanyamanyamanyamany----totototo----manypermissiontoroleassignmentmanypermissiontoroleassignmentmanypermissiontoroleassignmentmanypermissiontoroleassignmentrelationrelationrelationrelationUAUUAUUAUUAU╳╳╳╳RRRR,,,,amanyamanyamanyamany----totototo----manyusertoroleassignmentrelationmanyusertoroleassignmentrelationmanyusertoroleassignmentrelationmanyusertoroleassignmentrelationuser:user:user:user:SSSSUUUU,,,,afunctionmappingeachsessionafunctionmappingeachsessionafunctionmappingeachsessionafunctionmappingeachsessionsisisisitothesingleusertothesingleusertothesingleusertothesingleuseruser(si)user(si)user(si)user(si)(constantforthesession(constantforthesession(constantforthesession(constantforthesession‘slifetime)slifetime)slifetime)slifetime)roles:roles:roles:roles:SSSS2222RRRR,afunctionmappingeachsession,afunctionmappingeachsession,afunctionmappingeachsession,afunctionmappingeachsessionsisisisitoasetoftoasetoftoasetoftoasetofrolesrolesrolesrolesroles(