菜单

安全系统与实践

相关源文件

目的与范围

本文档全面概述了现代软件架构中的安全系统与实践。它涵盖了身份验证机制、数据保护技术、网络安全组件、API 安全以及安全系统设计原则。旨在为在系统架构的各个层面实施强大的安全性提供技术基础。

有关特定 API 安全实现的更多信息,请参阅 API 和 Web 开发。有关特定于云的安全配置,请参阅 云和分布式系统

目录

  1. 身份验证与身份管理
  2. 数据保护与加密
  3. 网络安全
  4. API 与应用程序安全
  5. 安全架构与设计原则

身份验证与身份管理

身份验证和身份管理构成了现代系统访问控制的基础。本节将介绍验证用户身份和管理身份验证状态的机制、协议和最佳实践。

认证机制

身份验证可以通过多种机制实现,每种机制都具有不同的安全属性和用户体验权衡。

常见身份验证机制

机制描述安全级别用例
基于密码传统的用户名/密码验证基本(取决于密码复杂度)通用 Web 应用程序
多因素 (MFA)结合多种验证方法金融服务、企业应用程序
基于证书使用数字证书进行身份验证企业环境、物联网设备
生物识别使用物理特征(指纹、面部)移动应用程序、物理访问
基于令牌使用安全令牌(JWT、PASETO)中高现代 Web 应用程序、API
OAuth/OIDC委托授权第三方集成

来源:README.md:411, README.md:416-418, README.md:431-432

JWT 和基于令牌的身份验证

JSON Web 令牌 (JWT) 提供了一种无状态的身份验证机制,广泛用于现代应用程序,尤其是在微服务架构中。

JWT 身份验证流程

来源:README.md:417, README.md:431

会话与令牌身份验证对比

来源:README.md:407-408, README.md:416, README.md:420, README.md:430

OAuth 2.0 和 SSO

用于生态系统访问和跨应用程序身份管理的身份验证。

来源:README.md:426, README.md:428, README.md:432

数据保护与加密

本节涵盖了保护静态数据和传输中数据的技术和方法。

加密类型

来源:README.md:414-415, README.md:429

安全密码存储

妥善存储密码对于保护用户凭据至关重要,即使在发生数据泄露的情况下也是如此。

来源:README.md:400

HTTPS 和 SSL/TLS

来源:README.md:414, README.md:418, README.md:429

网络安全

本节涵盖了保护网络基础设施和通信的组件和实践。

防火墙架构与实施

防火墙通过根据预设的安全规则控制和监控流量,充当网络安全的第一道防线。

来源:README.md:404, README.md:410

VPN 技术

VPN(虚拟专用网络)通过隧道和加密在公共网络上建立安全连接。

来源:README.md:422, README.md:424

SSH 架构

SSH(安全外壳)通过加密通道提供对系统的安全远程访问。

来源:README.md:421

API 与应用程序安全

本节介绍了保护 API 和 Web 应用程序的实践,这些应用程序是现代架构中常见的攻击向量。

安全 API 设计原则

来源:README.md:57, README.md:68, README.md:71

权限系统设计

来源:README.md:401, README.md:409

Web 应用程序安全层

来源:README.md:57, README.md:409, README.md:414, README.md:419

安全架构与设计原则

本节涵盖了构建安全系统的架构方法和设计原则。

纵深防御模型

来源:README.md:409, README.md:419

DevSecOps 集成

来源:README.md:398

敏感数据管理

来源:README.md:413

结论

安全是现代系统设计中的一个关键方面,需要采取多层方法。通过实施本文档概述的安全系统和实践,组织可以更好地保护其应用程序、API、数据和基础设施免受不断演变的威胁。安全性应贯穿整个开发生命周期,而不是事后添加,遵循“设计即安全”的原则。

有关 OAuth、JWT 或加密算法等特定安全技术的实现细节,请参阅 System Design 101 存储库中的相应指南。