美文网首页
信息安全 - 访问控制

信息安全 - 访问控制

作者: 遥望潇湘 | 来源:发表于2022-12-29 17:55 被阅读0次

    一、基础知识

    访问控制是控制对资源访问的过程,它通过提供对授权主体的访问并防止未经授权的访问尝试,以保护机密性、完整性和可用性。

    访问控制的三个原则

        1)知其所需(Need to know): 只授予用户访问执行工作所必需的资源权限。比如只给软件工程师开放他正在参与项目的代码库访问权限,而非完整代码库。

        2)最小特权(Least Privilege)

    每个程序和系统用户都应该具有完成任务所必需的最小权限集合。比如不能为了简便给普通用户开放管理员权限。

        3)特权分离原则(Separation of Privilege)

    细分特权,分配给多个主体,确保个体无法单独控制关键职能或系统。比如,负责创建账号的工程师不能同时负责审批账号。电影中常见的核弹发射需要双人控制,是特权分离原则的一个实际例子。

    二、访问控制四要素

    图1-访问控制四要素

    三、身份标识

    系统向用户颁发标识时要满足以下几点

        每个值都应当是唯一的,便于问责

        应当遵循一个标准的命名方案

        标识值不应描述用户的职位和任务

        标识值不应在用户之间共享

    四、身份验证

    身份验证是证明用户是他自己所声称的那个人,身份验证可以利用如下三种因素

    图2-身份验证知识点

            对生物识别信息的使用,请参考这里

    五、访问授权

    常见的有四种访问控制模型,分别用不同的方法来控制主体访问客体的方式。在这里主体(Subject)是发起访问需求的系统或用户, 客体(Object)是要被访问的资源(数据,系统,或物理资源)。

    自主访问控制(DAC - Discretionary Access Control)

    它是由资源所有者自主决策来分配访问权限,比如小区内有一千户家庭,每个家庭的入户门禁的权限控制都是由该家庭自主决定。

    大部分操作系统都是基于DAC模型,由每个文件的owner自主设置访问权限。

    其他所有的控制模型,都属于非自主访问控制。

    强制访问控制(MAC-Mandatory Access Control)

    它是一种基于安全标签的系统,每个主体和客体都有附加的安全标签,系统基于主体和客体的标签,以及系统安全策略对访问请求作出决策。

    比如具有绝密安全许可的用户,请求访问某绝密文件,系统给予授权。

    MAC适合用于军事机构等对进行要求高的环境

    基于角色的访问控制(RBAC - Role-based Access Control)

    根据组织的业务模式,创建不同的角色,为每个角色分配所需的资源访问权限。再根据不同用户在组织内扮演的角色,将其分配到特定角色,进而获得所需的权限。

    比如:组织中有IT,财务,HR等不同角色,每个角色被授予相应系统的权限。新的HR员工Alice加入后,只需将其账号分配到HR角色上,就可以获得所需的HR系统权限。

    RBAC的最大好处是更简单的账号配置流程,减少管理成本,适合流动率高的组织。

    基于属性的访问控制(ABAC-Attribute-based Access Control)

    使用系统中所具有的任何属性共同来创建允许的访问规则,提供更多的灵活性。

    主体可用的属性:职位,部门,入职年限,项目团队成员,地点

    客体可用的属性:敏感性分级,位置,创建人,类型

    动作属性: 审查,批准,评论,存档

    上下文背景:时间,项目状态

    访问控制矩阵

    它是一种数据结构,用于存储主体和客体对应的访问权限关系。

    访问控制列表(ACL-Access Control List)

        用在操作系统,应用程序以及路由器中,它是针对单个客体的,约定了不同主体针对该客体的访问权限。

    图3-ACL示例

    能力表(Capability Table)

        它指定了单个主体对不同客体所具有的访问权限。

        能力表是从用户的维度看权限,而ACL是从资源的角度看权限。

    六、可问责性

    配置可问责性的原因: 跟踪个体的恶意行为,监测入侵、重现事件,提供法律追索条件以及生成问题报告。

    要实现可问责性,需要通过记录用户和系统的活动,并且对这些记录进行审计。

    Audit Trail(审计轨迹)是与公司资源与数据相关的每项动作和活动的详细日志,当组织需要内部调查或面临外部审计时,审计轨迹能提供完整的信息支持。

    七、访问控制措施

        物理访问控制措施

            边界安全:不同区域的进出身份验证

            计算机控制: 上锁,USB屏蔽

            工作区域分隔&控制区域:基于敏感度区分不同区域,实施不同的安全控制

        技术性控制措施

            系统访问

            网络架构

            网络访问

            加密技术

            审计

    八、身份管理

    身份管理(Identity Management)是指使用不同产品对用户进行自动化的身份标识,身份认证和授权。

    数字身份的组成包括属性(部门,角色,许可等),权利(可获得的资源,已有的授权)和特征(生物识别信息,身高,体重等)。 IdM系统需要将这些身份信息集中在一起。

    新用户身份证明与注册

    当要在IAM系统中增加一个新用户时,有如下几个动作

    1. 身份证明-identity proofing

        比如新员工报道,HR需要对方提供身份证明文件(身份证,驾照,出生证明等)。或者是国内注册常用的手机和验证码做使命验证。

        在线机构可能会使用基于知识的验证(knowledge-based authentication)来要求用户证明身份。比如银行开立账户时,要求用户提供购车/购房的状态信息,并和其他机构做交叉验证来证明用户真实身份。

    2. 注册 - registration

        完成身份证明后,在IAM中为用户创立账号,并设置密码。如果后续使用生物识别信息进行账号登录,那在注册阶段还需完成生物信息的首次采集。比如:新员工首次在门禁系统中录入个人指纹信息。

    oAuth 

        它是一种面向第三方的开放授权标准,它不提供身份验证

        用于支持用户授权网站访问他在其他网站的资源,比如授权Linkedin访问用户在认证网站上的证书信息。证书网站通过提供授权码给Linkedin,允许它获取该用户的信息。

    联合身份管理 FIM

        是一种便携式身份,该身份及其相关联的权利可跨越业务边界使用

        SAML-安全断言标记语言支持不同系统间传递身份验证信息

        XACML-可扩展访问控制标记语言包含资产的安全策略和访问权限

        OIDC - OpenID Connect 是基于oAuth2.0协议构建的身份验证层

            Web应用程序可通过OIDC使用第三方IdP对用户进行身份验证,并且从该IdP获取有关用户的信息。

    SSO

         单点登录功能允许用户只输入一次凭证,就能访问网络中的所有资源。

        SSO实现方式

       1. Kerberos

        Kerberos的优势:1. 不需要传递密码,都是基于ticket做身份认证,保证了密钥安全性

                                        2. 客户端和服务都需要进行身份验证

                                            3. Ticket可以复用,不用每次都有KDC参与

        安全风险: 1. KDC会是个单点故障点

                            2. 通过Golden Ticket攻击可以伪造TGT

       2. 域

        同一个域名下,通过cookie和session共享机制也可实现SSO


    参考资料:

    CISSP Official Study Guide - 第九版英文版 及 第八版中文版

    相关文章

      网友评论

          本文标题:信息安全 - 访问控制

          本文链接:https://www.haomeiwen.com/subject/nybtcdtx.html