1.6 基本安全设计准则

思维导图:

 

 1.6 基本安全设计准则笔记


目标:理解和遵循一套广泛认可的安全设计准则,以指导保护机制的开发。

主要准则

  1. 机制的经济性:安全机制应设计得简单、短小,便于测试和验证,减少漏洞和降低维护难度。
  2. 故障安全默认:默认应该是无访问权限,只有在核实条件满足时才允许访问。出现错误时更容易发现。
  3. 完整的监察:每个访问都要检查,不依赖缓存决策。例如,每次访问文件或数据库时,都需要执行访问控制。
  4. 开放的设计:安全机制的设计应公开,密钥保密,加密算法公开,增加用户对算法的信任。
  5. 权限分离:访问受限资源时需要多个权限属性。例如,多因素用户认证。
  6. 最小权限:执行任务所需的最小权限集。例如,基于角色的访问控制。

讨论点

  • 设计的简化性是关键,但在现实中可能是最难实现的,因为系统不断演进和添加新特性。
  • 故障安全默认值在多数文件访问系统和客户端/服务器系统中得到实现。
  • 在完整的监察准则中,资源密集型的监察方法很少使用。
  • 加密算法的开放性是建立其可靠性和信任的关键。
  • 权限分离和最小权限可以有效地减少潜在的损害和风险。

我的理解:

  • 机制的经济性:这个准则强调的是“简洁是美”。一个简单而直接的设计更容易被测试、验证和理解。复杂的设计提供了更多的缝隙和可能性供攻击者寻找和利用弱点。

  • 故障安全默认:这个概念建议采取一种“宁可错杀一千,不可放过一个”的策略。默认情况下,应拒绝所有访问请求,除非它们经过明确的验证和授权。

  • 完整的监察:这意味着安全系统不应偷懒。每次资源访问请求都应该经过验证,而不是仅依赖于之前的决策或缓存结果。

  • 开放的设计:安全不应该依赖于秘密的设计或实现,而是应该依赖于秘密的数据,如密钥。通过公开设计,可以让整个社区参与到评估和改进的过程中。

  • 权限分离:这是一个多重验证的概念。要访问某些特定的资源或执行某些操作,可能需要满足多个条件或具有多个授权。

  • 最小权限:这是“给予必要、拒绝多余”的概念。用户或程序只应该获得完成其任务所需的最小权限,这样即使出现安全问题,破坏也会最小化。

 

 

主要概念:

  1. 最低权限原则:

    • 为角色分配仅完成其功能所需的最低权限。
    • 只有在显式获得权限后才能访问资源。
    • 权限应根据时间限制进行调整。例如,系统管理员在执行普通任务时应收回特殊权限。
  2. 最小共同机制准则:

    • 尽量减少不同用户之间共享的功能。
    • 目标是减少非预期的通信路径和所有用户依赖的硬件和软件数量。
  3. 心理接受度准则:

    • 安全机制应尽量对用户透明。
    • 如果安全机制过于复杂或妨碍资源的使用,用户可能关闭它。
  4. 隔离准则:

    • 公共访问系统应与关键资源隔离。
    • 用户的进程和文件也应被隔离。
    • 安全机制自身也应隔离,以防止未经授权的访问。
  5. 密封准则:

    • 类似面向对象编程的封装,集合数据和过程来提供保护。
  6. 模块化准则:

    • 安全功能应作为独立的模块开发。
    • 公共的安全函数与服务应当作公共模块提供。
  7. 分层准则:

    • 使用多层叠加的保护方法。
    • 即使其中一层失败,整个系统依然受到保护。
  8. 最小意外准则:

    • 接口应使意外事故的处理响应最小化。
    • 安全机制应对用户透明,让用户能理解其工作方式。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/110740.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ES 8.x新特性一览(完整版)

一、看点 在 2022 年 2 月 11 日,Elasticsearch(ES)正式发布了 8.0 版本,而截止到 2023 年 10 月,历经一年半时间,ES官方已经连续发布了多个版本,最新版本为 8.10.4。这一系列的更新引入了众多引…

【算法|动态规划No.32 | 完全背包问题】完全背包模板题

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望…

如何知道服务器的某个端口是否打开

1、telnet 命令:telnet ip port,port即端口,我们一般最常见的命令就是telnet,但是telnet使用的是tcp协议,换句话说telnet只能检测tcp的这个端口打开了没 若是端口打开,会出现下列信息 失败的是这个 如…

Linux 块设备驱动实验

前面我们都是在学习字符设备驱动,本章我们来学习一下块设备驱动框架,块设备驱动是Linux 三大驱动类型之一。块设备驱动要远比字符设备驱动复杂得多,不同类型的存储设备又对应不同的驱动子系统,本章我们重点学习一下块设备相关驱动…

Elasticsearch:使用 Elasticsearch 进行词汇和语义搜索

作者:PRISCILLA PARODI 在这篇博文中,你将探索使用 Elasticsearch 检索信息的各种方法,特别关注文本:词汇 (lexical) 和语义搜索 (semantic search)。 使用 Elasticsearch 进行词汇和语义搜索 搜索是根据你的搜索查询或组合查询…

【Java 进阶篇】Java BeanUtils 使用详解

Java中的BeanUtils是一组用于操作JavaBean的工具,它允许你在不了解JavaBean的具体内部结构的情况下,访问和修改其属性。本文将详细介绍Java BeanUtils的使用,包括如何获取和设置JavaBean的属性,复制属性,以及如何处理嵌…

Prometheus接入AlterManager配置钉钉告警(基于K8S环境部署)

文章目录 一、钉钉群创建报警机器人二、安装Webhook-dingtalk插件三、配置Webhook-dingtalk插件对接钉钉群四、配置AlterManager告警发送至Webhook-dingtalk五、Prometheus接入AlterManager配置六、部署PrometheusAlterManager(放到一个Pod中)七、测试告警 注意:请基…

使用Nokogiri和OpenURI库进行HTTP爬虫

目录 一、Nokogiri库 二、OpenURI库 三、结合Nokogiri和OpenURI进行爬虫编程 四、高级爬虫编程 1、并发爬取 2、错误处理和异常处理 3、深度爬取 总结 在当今的数字化时代,网络爬虫已经成为收集和处理大量信息的重要工具。其中,Nokogiri和OpenUR…

深入理解数据结构(2)——用数组实现队列

数组是一种数据结构,队列也是一种数据结构。它们都是由基础的语法实现的。 如果一个数据结构可以用另外的数据结构来实现,那么可以有力的证明——“数据结构是一种思想”,是一种讲语法组合起来实现某种功能的手段 “整体大于局部” 一、队列的…

SpringSecurity6 | HelloWorld入门案例

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: Java从入门到精通 ✨特色专栏&#xf…

腾讯云优惠券如何领取?详细教程来了!

腾讯云优惠券是腾讯云为广大用户提供的优惠福利,包括代金券和折扣券,大家可以通过领取优惠券,在购买腾讯云产品时享受优惠。本文将为大家介绍如何领取腾讯云优惠券,以及领取后的使用规则。 一、腾讯云优惠券领取方法 腾讯云优惠券…

视频讲解|考虑源荷两侧不确定性的含风电电力系统低碳调度

目录 1 主要内容 2 讲解视频 1 主要内容 本次程序讲解对应程序链接考虑源荷两侧不确定性的含风电电力系统低碳调度,主要实现了基于模糊机会约束的源荷两侧不确定性对含风电电力系统低碳调度的影响,将源荷不确定性采用清晰等价类进行处理。部分讲解重点…

11.与JavaScript深入交流-[js一篇通]

文章目录 1.变量的使用1.1基本用法1.2理解 动态类型 2.基本数据类型2.1number 数字类型2.1.1数字进制表示2.1.2特殊的数字值 2.2string 字符串类型2.2.1基本规则2.2.2转义字符2.2.3求长度2.2.4字符串拼接 2.3boolean 布尔类型2.4undefined 未定义数据类型2.5null 空值类型 3.运…

原生JS 表格列拖拽 适用JqGrid

js $(function () {var d1 new dragTable();d1.init({tabel: .drag-table}); })function dragTable() {this.disX 0; // 相对按下的位置移动的距离this.outX 0; // 鼠标按下的点到大盒子边上的距离this.lanX 0; // 拖动到的位置this.$createDiv null;this.$createDivBg …

缓存和数据库一致性解决方案

引入缓存提高性能 如果你的业务处于起步阶段,流量非常小,那无论是读请求还是写请求,直接操作数据库即可,这时你的架构模型是这样的: 但随着业务量的增长,你的项目请求量越来越大,这时如果每次都…

rust std

目录 一,std基本数据结构 1,std::option 2,std::result 二,std容器 1,vector 三,std算法 1,排序 2,二分 (1)vector二分 (2)…

Yusi技术资讯博客wordpress模板

Yusi技术资讯博客wordpress模板,从第一感觉看上去,两栏结构直接将网站的内容展现,以红白灰色调搭配,一种低调协调的风格,喜欢该wordpress主题的朋友可以下载试试。 下载地址:https://bbs.csdn.net/topics/…

【ChatGPT系列】ChatGPT:创新工具还是失业威胁?

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

草莓熊代码

话不多说直接上代码 如果需要exe文件电脑可以不依赖环境直接运行请评论或者私信 注意: 不需要年月日显示 注释 879-894 行不需要雪花显示 注释 895-908 行不需要礼物显示 注释 771 行653行 可以修改 祝你节日快乐内容657行 可以修改 草莓熊 内容修改程序标题 第 16 行# -*- co…