414 字
1 分钟
零信任架构与数据安全
一、零信任架构
1.1 核心原则
graph LR
A["永不信任"] --> B["始终验证"]
B --> C["最小权限"]
C --> D["微分段"]
D --> E["持续监控"]
E --> A
style A fill:#FFB6C1
style B fill:#FFD700
style C fill:#90EE90
style D fill:#87CEEB
style E fill:#DDA0DD
1.2 传统 vs 零信任
| 传统边界安全 | 零信任安全 |
|---|---|
| 内部网络可信 | 从不信任,始终验证 |
| 保护边界入口 | 保护每个工作负载 |
| 静态防御 | 持续验证 |
| 粗粒度访问 | 最小权限 |
| 网络分段 | 微分段/软件定义边界 |
1.3 BeyondCorp(Google 实践)
beyondcorp = { "访问代理": "验证用户和设备身份", "设备清单服务": "跟踪受管设备", "用户/组清单": "管理用户权限", "访问策略引擎": "基于上下文的访问决策", "策略信息源": "提供威胁情报"}
# 访问决策因素access_decision = { "用户身份": "已验证的用户和组", "设备状态": "受管设备、合规状态", "上下文": "IP 地址、时间、风险评分", "资源敏感度": "数据分类级别"}二、数据加密
2.1 加密类型对比
| 类型 | 说明 | 使用场景 |
|---|---|---|
| 对称加密 | 同一密钥加解密 | 数据存储、本地加密 |
| 非对称加密 | 公钥加密、私钥解密 | 密钥交换、数字签名 |
| 哈希 | 单向函数 | 完整性验证、密码存储 |
| 算法 | 类型 | 安全性 |
|---|---|---|
| AES-256 | 对称 | 高 |
| RSA-2048 | 非对称 | 中 |
| SHA-256 | 哈希 | 高 |
| bcrypt | 哈希 | 高(自适应) |
2.2 云存储加密
encryption_types = { "SSE-S3": { "加密类型": "AES-256", "密钥管理": "AWS S3 托管", "适用场景": "标准文件存储" }, "SSE-KMS": { "加密类型": "AES-256", "密钥管理": "AWS KMS (CMK)", "适用场景": "需要密钥轮换、审计" }, "SSE-C": { "加密类型": "客户提供密钥", "密钥管理": "客户完全控制", "适用场景": "合规要求严格" }, "CSE-KMS": { "加密类型": "AES-256", "密钥管理": "KMS (客户端加密)", "适用场景": "端到端加密" }}2.3 传输加密
# TLS 配置最佳实践ssl_config: min_version: "TLS 1.2" preferred_ciphers: - "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" - "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" disabled_ciphers: - "TLS_RSA_WITH_AES_128_CBC_SHA" - "TLS_RSA_WITH_3DES_EDE_CBC_SHA"三、KMS 密钥管理
3.1 AWS KMS
{ "Version": "2012-10-17", "Id": "key-policy", "Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow use of key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789:role/DataRole" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*" ], "Resource": "*" } ]}3.2 密钥轮换
# AWS 自动轮换:每 365 天(CMK)# 客户管理密钥可手动轮换
import boto3
# 手动创建密钥版本client = boto3.client('kms')response = client.rotate_key_on_demand( KeyId='alias/my-key')3.3 密钥层次结构
key_hierarchy = """主密钥 (Master Key / CMK) │ ├── 数据密钥 (Data Key) │ ├── 用于加密数据文件 │ └── 用主密钥加密后存储 │ └── 密钥加密密钥 (KEK) └── 用于加密数据密钥"""四、数据分类
4.1 分类级别
data_classification = { "公开": { "标识": "PUBLIC", "加密": "可选", "访问控制": "无限制", "示例": ["营销材料", "公开文档"] }, "内部": { "标识": "INTERNAL", "加密": "传输加密", "访问控制": "员工认证", "示例": ["内部流程", "非敏感数据"] }, "敏感": { "标识": "SENSITIVE", "加密": "静态加密", "访问控制": "需要授权", "示例": ["PII", "合同"] }, "机密": { "标识": "CONFIDENTIAL", "加密": "强加密 + MFA", "访问控制": "特定角色", "示例": ["商业秘密", "密钥"] }, "绝密": { "标识": "TOP SECRET", "加密": "硬件安全模块", "访问控制": "高管审批", "示例": ["核心算法", "战略规划"] }}4.2 敏感数据类型
| 类型 | 例子 | 合规要求 |
|---|---|---|
| PII | 姓名、身份证、电话 | GDPR、CCPA |
| PHI | 病历、处方 | HIPAA |
| PCI | 信用卡号 | PCI DSS |
| 财务数据 | 银行账号、税务信息 | SOX |
4.3 数据处理原则
data_handling = { "收集": { "原则": "最小化收集", "检查": ["是否必要", "是否经过同意", "是否告知用途"] }, "存储": { "原则": "安全存储", "检查": ["加密", "访问控制", "保留期限"] }, "使用": { "原则": "限定用途", "检查": ["用途是否正当", "是否脱敏"] }, "共享": { "原则": "受控共享", "检查": ["是否有协议", "是否脱敏", "是否审计"] }, "销毁": { "原则": "安全销毁", "检查": ["是否彻底", "是否有证明"] }}五、Secrets 管理
5.1 密钥管理服务
# AWS Secrets ManagerapiVersion: v1kind: Secretmetadata: name: db-credentialstype: OpaquestringData: username: admin password: secret123
# 自动轮换rotation: enabled: true days: 305.2 HashiCorp Vault
# 存储密钥vault kv put secret/database username=admin password=secret123
# 动态凭证vault read database/creds/my-role
# 加密传输vault operator init -key-shares=5 -key-threshold=35.3 密钥管理最佳实践
| 实践 | 说明 |
|---|---|
| 永不存储明文密钥 | 始终加密或使用密钥管理服务 |
| 定期轮换 | 设置自动轮换策略 |
| 分离管理职责 | 密钥管理与数据访问分离 |
| 审计日志 | 记录所有密钥访问 |
| 备用密钥 | 安全的离线备份 |
支持与分享
如果这篇文章对你有帮助,欢迎支持作者或分享给更多人
部分信息可能已经过时
相关文章 智能推荐
1
零信任安全架构详解
云安全 深度解析零信任架构——SDP、IAM、微隔离,与国内零信任产品对比(深信服、安恒信息)。
2
云安全事件响应与合规
面试 云安全事件响应流程、SIEM 监控、合规框架(SOC2/ISO27001/GDPR)、审计日志配置。
3
IAM 与访问控制
面试 云安全 IAM——身份与访问管理、最小权限原则、MFA 多因素认证、SSO 单点登录、联合认证。
4
零信任架构
密码学与安全工程 深入零信任架构——零信任原则、BeyondCorp、身份代理、mTLS、服务网格零信任。
5
SASE 云安全访问服务技术详解
云安全 深度解析 SASE 云安全访问服务——SSE 架构、零信任网关、CASB 数据防护、多租户策略管理、业内实践。






