系统架构设计师备考第67天——数据库系统的安全&系统架构的脆弱性

一、数据库系统的安全设计

1. 数据库安全设计的评估标准
  • 国际标准
    • TCSEC(橘皮书):分4类(A/B/C/D)7级,强调机密性与访问控制。
    • ITSEC:欧洲标准,分离功能需求(F)与评估等级(E)。
    • CC标准(ISO/IEC 15408):通用评估框架,覆盖安全功能(TOE)与保障要求(EAL1-7)。
  • 核心评估维度
    • 身份鉴别:强认证机制(如多因子认证)。
    • 访问控制:基于角色(RBAC)或属性(ABAC)的权限模型。
    • 审计追踪:记录敏感操作(如数据修改、权限变更)。
    • 数据加密:传输层(TLS/SSL)与存储层(透明加密/TDE)。
2. 数据库的完整性设计
  • 实体完整性:主键约束(唯一性+非空),防止重复记录。
  • 参照完整性:外键约束,确保关联表数据一致性(如级联删除)。
  • 用户定义完整性
    • 域约束:数据类型、范围(如年龄>0)。
    • 业务规则:触发器(Trigger)实现复杂逻辑(如库存不足时禁止订单)。
  • 典型技术
    • 校验和(Checksum):检测数据篡改。
    • 事务机制(ACID):原子性保障操作完整性。

考点提示:数据库完整性 vs. 安全性

  • 完整性 :防数据错误(业务逻辑);安全性:防未授权访问(攻击防护)。

二、系统架构的脆弱性分析

1. 脆弱性根源与分类
  • 来源
    • 设计瑕疵(如协议缺陷)。
    • 实现弱点(如缓冲区溢出)。
    • 配置错误(默认密码未修改)。
  • 软件脆弱性类型
    软件脆弱性 设计脆弱性 结构脆弱性 架构模式缺陷 组件交互漏洞
2. 典型软件架构的脆弱性分析
架构风格 脆弱性表现 应对措施
分层架构 层间通信瓶颈;底层错误扩散至全系统(如空指针) 冗余设计;异步消息队列
C/S架构 客户端数据泄露;二层结构暴露数据库凭证 三层结构;HTTPS加密传输
B/S架构 HTTP协议易受中间人攻击;会话劫持 启用HSTS;会话令牌绑定IP
事件驱动架构 死循环风险;高并发导致数据丢失 限流机制;事务补偿
MVC架构 视图频繁调用模型降低性能;控制器未验证输入(SQL注入) 输入过滤;缓存优化
微服务架构 分布式事务管理复杂;服务通信链路过长(延迟累积) 服务网格(如Istio);熔断机制

高频考点

  • 分层架构的"层间通信脆弱性"常考性能与安全性权衡。
  • 微服务架构的"分布式复杂性"是案例分析重点。

三、安全架构设计案例分析

案例1:电子商务系统安全性设计
  • 威胁应对
    • 支付安全:PCI-DSS合规(加密卡号+独立支付区)。
    • DDoS防护:CDN分流+Web应用防火墙(WAF)。
    • 数据泄露:敏感信息脱敏(如手机号部分隐藏)。
  • 架构策略
    • 纵深防御:网络层(防火墙)→ 应用层(输入验证)→ 数据层(加密)。
    • 零信任模型:动态验证每次请求身份。
案例2:基于混合云的工业安全架构
  • 挑战:本地设备与云平台协同时的攻击面扩大。
  • 解决方案
    • 边缘计算:敏感数据本地处理(减少传输风险)。
    • 安全切片:5G uRLLC切片隔离关键控制流量。
    • 统一审计:集中日志分析(SIEM系统)覆盖混合环境。
  • 技术整合
    • SDN网络:动态策略下发隔离威胁。
    • 机密计算:TEE(可信执行环境)保护运行时数据。

四、考题示例(高频考点)

  1. 选择题

    在MVC架构中,哪一层的脆弱性可能导致SQL注入攻击?

    A. 模型层

    B. 视图层

    C. 控制器层
    答案:C(未验证用户输入)

  2. 案例分析题

    某微服务系统在高并发场景下出现数据不一致,请从架构脆弱性角度分析原因并提出改进方案。
    答题要点

    • 原因:服务间异步通信丢失消息;无分布式事务协调。
    • 方案:引入Saga模式;消息队列持久化+重试机制。

学习建议

  • 重点理解不同架构的脆弱性特征(如分层架构的"错误扩散" vs. 微服务的"通信复杂性")。
  • 结合案例掌握安全设计模式(如零信任、纵深防御)。
  • 考题多聚焦实际场景应用(如电商支付、工业物联网)。
相关推荐
百锦再4 小时前
金仓数据库提出“三低一平”的迁移理念
开发语言·数据库·后端·python·rust·eclipse·pygame
九河云4 小时前
无人机测绘数字化实践:AI 驱动地形建模与数据标注革新
科技·安全·无人机·数字化转型
-Xie-4 小时前
Redis(二)——数据类型二
数据库·redis·缓存
帅次4 小时前
系统分析师-案例分析-数据库系统&数据仓库&反规范化技术&NoSQL&内存数据库
大数据·数据库·数据仓库·oracle·kafka·数据库开发·数据库架构
007php0074 小时前
某游戏大厂的常用面试问题解析:Netty 与 NIO
java·数据库·游戏·面试·职场和发展·性能优化·nio
我科绝伦(Huanhuan Zhou)4 小时前
Oracle AWR管理与快照操作完整指南
数据库·oracle·ffmpeg
北城以北88884 小时前
SSM--MyBatis框架之动态SQL
java·开发语言·数据库·sql·mybatis
小鱼儿LY4 小时前
系统架构设计师论文-论软件体系结构的演化
系统架构·软件体系结构·架构设计师·体系结构演化
安娜的信息安全说4 小时前
供应链安全:数字时代的关键防线
安全·供应链·法律