
# 安全设计原则
华为云根据自身安全实践和成功交付大量项目的经验，提炼了如下十大安全设计原则，你可以在此基础上设计企业在云上的整体安全方案。
- **零信任原则（Zero Trust Principle）**
  遵循"永不信任，始终验证"的安全理念，假设任何人或程序都不可信，无论是内部用户、外部用户还是网络设备。系统内的组件进行任何通信之前都将通过显式的验证，减少系统信任带来的攻击面。零信任把现有的基于实体鉴别和默认授权的静态信任模型（非黑即白），变成基于持续风险评估和逐次授权的动态信任模型。零信任不根据网络空间位置决定可信度，其重心在于保护资源，而不是网段。与传统安全理念对比，它将网络防御的重心从静态的、基于网络的边界转移到了用户、设备和资源上。所有的资源（如人/物/终端/应用/网络/数据/供应链）都需要进行持续身份验证和信任评估，从全局视角执行动态安全策略。零信任通过动态、持续性的实体风险评估，缩小受攻击面，保证系统安全。
  

- **最小授权原则（Principle of Least Privilege）**
  基于华为云的细粒度授权机制，只授予用户或应用程序完成任务所需的最小权限，限制访问权限可以减少攻击面，即使用户密码或应用程序被攻破，攻击者也难以获得更广泛的访问权限。如果用户或应用程序的任务产生变化，也应该及时调整权限确保任务能够顺利完成。
  

- **纵深防御（Defense in Depth）**
  不要依赖单一的安全机制，而是采用多层安全措施，即使一层防御失效，其他层也能提供保护。这就像城堡的护城河、城墙、城门等多重防御体系。需要企业建立覆盖涵盖全技术堆栈的纵深防御机制，将多种类型的安全控制应用于所有技术堆栈，包括网络边缘、VPC、云存储、ECS实例、操作系统、应用程序配置和代码等。
  

- **安全和成本平衡（Balance between Security and Cost）**
  尽管安全领域强调纵深防护，但越全面的安全防护方案的成本也更高。企业应基于业务系统的合规要求（如信息安全等级保护）和敏感数据的分类分级设计成本可接受的安全防护方案，不应盲目针对所有的业务系统和数据都采用全方位和高级别的安全防护方案。
  

- **云原生安全防护（Cloud Native Security）**
  云服务商提供了丰富的云原生安全服务（比如WAF、Anti-DDoS、云防火墙、密钥管理等）。这些云原生安全云服务与云平台深度集成，在性能、弹性、便利性上有较好的优势，同时，云服务商的安全运营经验也会持续推动云原生安全服务的能力提升，因此建议企业优先选择云原生安全服务。华为云提供的云原生安全服务清单，请参考章节[云原生安全服务](https://support.huaweicloud.com/usermanual-caf/caf_01_0206.html)-。
  

- **攻击者视角（Attacker Perspective）**
  企业应当从攻击者视角评估业务系统的安全性，识别安全风险，据此加固安全方案，以降低系统被攻击的可能性、提升攻击成功的难度，让攻击者发起攻击的成本超过其获得的利益。
  

- **持续安全运营（Continuous security operation）**
  安全防护三分在于技术，七分在于运营。只有不断优化安全管理流程、持续安全运营、持续监控和评估云环境的合规性，才能保障业务系统的长期安全稳定运行。
  

- **木桶原则（Barrel Principle）**
  安全是一项系统工程，适用木桶原则，任何一项安全短板都会降低整体安全性，因此要避免安全短板的出现。
  

- **人和数据分离（Separation of people and data）**
  利用工具和管理机制减少人员直接访问和处理数据的必要性，减少处理敏感数据时出现人为错误和人为删改的风险。
  

- **DevSecOps**
  将安全性纳入到整个软件开发生命周期中，从需求分析、设计、开发、测试、部署、运维、运营的每个阶段都考虑安全性，以确保系统的安全性和稳定性。通过将安全检测手段与DevOps的自动化流程相结合，DevSecOps可更快地检测和修复安全漏洞，并提高软件开发的效率和质量。
  
 
