implementing-zero-trust-in-cloud
本技能指导组织按照 NIST SP 800-207 和 Google BeyondCorp 原则在云环境中实施零信任(Zero Trust)架构,涵盖以身份为中心的访问控制、微分段(Micro-Segmentation)、持续验证、设备信任评估,以及部署身份感知代理(Identity-Aware Proxy)以消除 AWS、Azure 和 GCP 环境中的隐式网络信任。
Best use case
implementing-zero-trust-in-cloud is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
本技能指导组织按照 NIST SP 800-207 和 Google BeyondCorp 原则在云环境中实施零信任(Zero Trust)架构,涵盖以身份为中心的访问控制、微分段(Micro-Segmentation)、持续验证、设备信任评估,以及部署身份感知代理(Identity-Aware Proxy)以消除 AWS、Azure 和 GCP 环境中的隐式网络信任。
Teams using implementing-zero-trust-in-cloud should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/implementing-zero-trust-in-cloud/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How implementing-zero-trust-in-cloud Compares
| Feature / Agent | implementing-zero-trust-in-cloud | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
本技能指导组织按照 NIST SP 800-207 和 Google BeyondCorp 原则在云环境中实施零信任(Zero Trust)架构,涵盖以身份为中心的访问控制、微分段(Micro-Segmentation)、持续验证、设备信任评估,以及部署身份感知代理(Identity-Aware Proxy)以消除 AWS、Azure 和 GCP 环境中的隐式网络信任。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 在云中实施零信任架构
## 适用场景
- 从传统边界安全迁移到以身份为中心的访问控制时
- 为远程办公人员消除访问云应用的 VPN 依赖时
- 对每个访问请求实施持续验证,无论其网络位置如何时
- 为多云工作负载设计微分段策略时
- 合规要求强制采用零信任架构时(联邦法规、NIST 指南)
**不适用于**:仅替换 VPN 而不进行更广泛架构变更的场景、单纯的网络防火墙规则管理(参见 implementing-cloud-network-segmentation),或身份提供商初始设置(参见 managing-cloud-identity-with-okta)。
## 前置条件
- 支持 OIDC/SAML 集成的身份提供商(Okta、Azure AD、Google Workspace)
- 用于终端信任评估的设备管理解决方案(Intune、Jamf、Google Endpoint Verification)
- 通过 HTTPS 访问的云工作负载,具备负载均衡器或反向代理基础设施
- 用于持续监控访问决策和异常检测的 SIEM 平台
## 工作流程
### 步骤 1:定义零信任原则和架构
遵循 NIST SP 800-207 建立核心原则:永不信任,始终验证。每个访问请求无论来源如何,都必须经过认证、授权和加密。
```
零信任架构组件:
+-------------------------------------------------------------------+
| 策略决策点 (Policy Decision Point) |
| +-------------------+ +------------------+ +-----------------+ |
| | 身份提供商 | | 设备信任 | | 风险引擎 | |
| | (Okta/Azure AD) | | (Intune/Jamf) | | (持续评估) | |
| +-------------------+ +------------------+ +-----------------+ |
+-------------------------------------------------------------------+
|
+--------------------+
| 策略执行点 |
| (IAP/代理) |
+--------------------+
|
+-------------------+-------------------+
| | |
+----------+ +----------+ +----------+
| 应用 A | | 应用 B | | 应用 C |
| (AWS) | | (Azure) | | (GCP) |
+----------+ +----------+ +----------+
```
### 步骤 2:部署身份感知代理
配置身份感知代理(Identity-Aware Proxy,IAP),在请求到达应用之前强制执行基于身份和上下文的访问决策。消除对应用后端的直接网络访问。
```bash
# GCP:为后端服务启用身份感知代理
gcloud services enable iap.googleapis.com
# 为 App Engine 应用配置 IAP
gcloud iap web enable --resource-type=app-engine
# 设置 IAP 访问策略,要求特定用户组
gcloud iap web add-iam-policy-binding \
--resource-type=app-engine \
--member="group:engineering@company.com" \
--role="roles/iap.httpsResourceAccessor"
# 创建要求企业设备和 MFA 的访问级别
gcloud access-context-manager levels create corporate-device \
--title="Corporate Device with MFA" \
--basic-level-spec='{
"conditions": [
{
"devicePolicy": {
"requireScreenlock": true,
"allowedEncryptionStatuses": ["ENCRYPTED"],
"osConstraints": [
{"osType": "DESKTOP_CHROME_OS", "minimumVersion": "100.0"},
{"osType": "DESKTOP_MAC", "minimumVersion": "12.0"},
{"osType": "DESKTOP_WINDOWS", "minimumVersion": "10.0.19041"}
]
},
"requiredAccessLevels": ["accessPolicies/POLICY_ID/accessLevels/require-mfa"]
}
]
}'
```
```bash
# AWS:配置 AWS Verified Access 实现零信任应用访问
aws ec2 create-verified-access-instance \
--description "Zero Trust Access Instance"
aws ec2 create-verified-access-trust-provider \
--trust-provider-type user \
--user-trust-provider-type oidc \
--oidc-options '{
"Issuer": "https://company.okta.com/oauth2/default",
"AuthorizationEndpoint": "https://company.okta.com/oauth2/default/v1/authorize",
"TokenEndpoint": "https://company.okta.com/oauth2/default/v1/token",
"UserInfoEndpoint": "https://company.okta.com/oauth2/default/v1/userinfo",
"ClientId": "verified-access-client-id",
"ClientSecret": "verified-access-client-secret",
"Scope": "openid profile groups"
}'
```
### 步骤 3:实施持续验证
配置实时风险评估,根据身份、设备态势、位置、行为模式和威胁情报信号评估每个访问请求。
```yaml
# Azure 条件访问策略(JSON 格式)
{
"displayName": "零信任 - 要求 MFA 和合规设备",
"state": "enabled",
"conditions": {
"users": {"includeUsers": ["All"]},
"applications": {"includeApplications": ["All"]},
"locations": {
"includeLocations": ["All"],
"excludeLocations": ["AllTrusted"]
},
"signInRiskLevels": ["medium", "high"],
"deviceStates": {
"includeStates": ["All"],
"excludeStates": ["Compliant", "DomainJoined"]
}
},
"grantControls": {
"operator": "AND",
"builtInControls": [
"mfa",
"compliantDevice"
]
},
"sessionControls": {
"signInFrequency": {"value": 4, "type": "hours"},
"persistentBrowser": {"mode": "never"}
}
}
```
### 步骤 4:强制执行微分段
在网络层应用零信任,将云工作负载分割为隔离区域,并为每条通信路径设置显式允许规则。
```bash
# AWS:创建没有默认路由的隔离 VPC
aws ec2 create-vpc --cidr-block 10.100.0.0/16 --no-amazon-provided-ipv6-cidr-block
# 创建实现微分段的安全组
aws ec2 create-security-group \
--group-name web-tier-sg \
--description "Web tier - accepts traffic from ALB only" \
--vpc-id vpc-abc123
aws ec2 authorize-security-group-ingress \
--group-id sg-web123 \
--protocol tcp --port 8080 \
--source-group sg-alb123
aws ec2 create-security-group \
--group-name app-tier-sg \
--description "App tier - accepts traffic from web tier only"
aws ec2 authorize-security-group-ingress \
--group-id sg-app123 \
--protocol tcp --port 8443 \
--source-group sg-web123
```
### 步骤 5:实施设备信任评估
集成终端验证以在授权访问前评估设备安全态势。要求加密、操作系统补丁和终端保护。
```bash
# 使用 BeyondCorp 进行 Google Endpoint Verification
gcloud access-context-manager levels create managed-device \
--title="Managed and Encrypted Device" \
--basic-level-spec='{
"conditions": [{
"devicePolicy": {
"requireScreenlock": true,
"requireAdminApproval": true,
"allowedEncryptionStatuses": ["ENCRYPTED"],
"allowedDeviceManagementLevels": ["COMPLETE"]
}
}]
}'
# 将访问级别应用于受 IAP 保护的资源
gcloud iap web set-iam-policy \
--resource-type=backend-services \
--service=web-app-backend \
--condition='expression=accessPolicies/POLICY_ID/accessLevels/managed-device'
```
### 步骤 6:通过持续分析进行监控和自适应
部署日志记录和分析工具,监控所有访问决策、检测异常,并根据真实使用模式持续优化零信任策略。
```bash
# 将 IAP 访问日志导出到 BigQuery 进行分析
gcloud logging sinks create iap-access-logs \
bigquery.googleapis.com/projects/my-project/datasets/security_logs \
--log-filter='resource.type="gce_backend_service" AND protoPayload.serviceName="iap.googleapis.com"'
# AWS Verified Access 日志输出到 CloudWatch
aws ec2 modify-verified-access-instance-logging-configuration \
--verified-access-instance-id vai-abc123 \
--access-logs '{
"CloudWatchLogs": {"Enabled": true, "LogGroup": "/aws/verified-access/logs"},
"S3": {"Enabled": true, "BucketName": "verified-access-logs"}
}'
```
## 核心概念
| 术语 | 定义 |
|------|------|
| 零信任(Zero Trust) | 通过对每个访问请求要求持续认证、授权和加密来消除隐式信任的安全模型 |
| BeyondCorp | Google 的零信任实现,将访问控制从网络边界转移到个人用户和设备 |
| 身份感知代理(Identity-Aware Proxy) | 反向代理,在将请求转发到后端应用前验证用户身份和上下文,替代基于 VPN 的访问 |
| 持续验证(Continuous Verification) | 对每个访问请求进行身份、设备态势、位置和行为的实时评估,不仅限于初始认证 |
| 设备信任(Device Trust) | 在授权访问前评估终端安全态势,包括加密状态、操作系统版本、补丁级别和 MDM 合规性 |
| NIST SP 800-207 | 美国国家标准与技术研究院定义零信任架构原则和部署模型的出版物 |
| Access Context Manager | GCP 服务,基于设备属性、IP 范围和身份属性定义条件访问策略 |
| AWS Verified Access | AWS 服务,基于身份和设备信任信号提供零信任应用访问,无需 VPN |
## 工具与系统
- **Google BeyondCorp Enterprise**:端到端零信任平台,包含 Identity-Aware Proxy、Access Context Manager 和 Endpoint Verification
- **AWS Verified Access**:零信任应用访问服务,与身份提供商和设备信任服务集成
- **Azure Conditional Access**:策略引擎,为 Azure AD 应用实施基于身份、设备、位置和风险的访问控制
- **Zscaler Private Access**:零信任网络访问平台,通过基于身份和上下文的应用访问替代 VPN
- **Cloudflare Access**:零信任代理,通过身份验证和设备态势检查保护内部应用
## 常见场景
### 场景:消除远程工程师访问的 VPN 依赖
**场景背景**:一个组织有 500 名工程师通过 VPN 访问内部工具。VPN 集中器是单点故障,近期的凭据窃取事件表明 VPN 访问赋予了过多的横向移动能力。
**方法**:
1. 梳理通过 VPN 访问的所有内部应用,并按敏感程度分类
2. 在每个应用前部署身份感知代理(GCP)或 Verified Access(AWS)
3. 配置与企业身份提供商的 OIDC 集成,要求所有访问使用 MFA
4. 实施设备信任策略,要求已加密且安装了最新操作系统补丁和终端保护的设备
5. 为敏感应用启用持续会话评估,每 4 小时重新认证
6. 逐步将团队从 VPN 迁移到 IAP 访问,监控访问失败情况并调整策略
7. 完成 100% 迁移并经过 30 天并行运行期后停用 VPN
**常见陷阱**:未部署设备管理就实施零信任,会阻止使用个人设备的合法用户。重新认证间隔设置过短会因频繁登录提示影响开发人员的工作效率。
## 输出格式
```
零信任架构评估报告
===========================================
组织: Acme Corp
云提供商: AWS, Azure, GCP
评估日期: 2025-02-23
成熟度级别: Level 2(高级)- NIST ZTA 成熟度模型
身份支柱:
MFA 实施率: 98% 用户(目标: 100%)
抗钓鱼 MFA: 34%(目标: 80%)
SSO 覆盖率: 87% 应用
条件访问策略: 12 个活跃策略
设备支柱:
MDM 注册率: 92% 企业设备
加密实施率: 95%
操作系统补丁合规率: 78%(30 天窗口)
终端保护: 96%
网络支柱:
VPN 依赖: 剩余 3 个应用(目标: 0)
IAP 保护的应用: 47/50
微分段工作负载: 65%
东西向流量加密: 40%(mTLS 采用率)
应用支柱:
位于零信任代理后的应用: 94%
会话重新认证: 已为 85% 的应用配置
运行时访问日志: 100%
建议:
1. [高] 将剩余 3 个 VPN 依赖应用迁移到 IAP
2. [高] 在 6 个月内将抗钓鱼 MFA 提升至 80%
3. [中] 将微分段扩展到剩余 35% 的工作负载
4. [中] 部署服务网格实现东西向 mTLS 加密
```Related Skills
securing-kubernetes-on-cloud
本技能涵盖通过实施 Pod 安全标准(Pod Security Standards)、网络策略、工作负载身份、RBAC 权限控制、镜像准入控制和运行时安全监控,对 EKS、AKS 和 GKE 上的托管 Kubernetes 集群进行加固。涉及云平台特定安全功能,包括 EKS 的 IRSA、GKE 的工作负载身份(Workload Identity)以及 AKS 的托管身份(Managed Identity)。
performing-cloud-storage-forensic-acquisition
通过收集 API 远程数据和端点设备本地同步客户端制品,对 Google Drive、OneDrive、Dropbox 和 Box 等云存储服务执行取证获取和分析。
performing-cloud-penetration-testing
对 AWS、Azure 和 GCP 云环境执行授权渗透测试,识别 IAM 错误配置、暴露的存储桶、过度宽松的安全组、 无服务器函数漏洞以及从初始访问到账户沦陷的云特定攻击路径。测试人员使用云原生工具及 Pacu、 ScoutSuite 等专用框架枚举并利用云基础设施。适用于云渗透测试、AWS 安全评估、Azure 渗透测试 或云基础设施安全测试等请求场景。
performing-cloud-penetration-testing-with-pacu
使用开源 AWS 利用框架 Pacu 执行已授权的 AWS 渗透测试,枚举 IAM 配置、发现权限提升路径、测试凭据收集,并通过系统化的攻击模拟验证安全控制。
performing-cloud-native-forensics-with-falco
使用 Falco YAML 规则在容器和 Kubernetes 中进行运行时威胁检测,监控系统调用以检测 shell 生成、文件篡改、网络异常和权限提升。通过 Falco gRPC API 管理 Falco 规则并解析 Falco 告警输出。适用于构建容器运行时安全或调查 k8s 集群入侵。
performing-cloud-incident-containment-procedures
在 AWS、Azure 和 GCP 中执行云原生事件遏制,包括隔离受攻陷资源、撤销凭据、保全取证证据,以及应用安全组限制以防止横向移动。
performing-cloud-forensics-with-aws-cloudtrail
使用 CloudTrail 日志对 AWS 环境执行取证调查,重建攻击者活动、识别受损凭据并分析 API 调用模式。
performing-cloud-forensics-investigation
通过收集和分析来自 AWS、Azure 和 GCP 服务的日志、快照和元数据,在云环境中开展取证调查。
performing-cloud-asset-inventory-with-cartography
使用 Cartography 执行全面的云资产清单和关系映射,在 AWS、GCP 和 Azure 中构建包含基础设施资产、IAM 权限和攻击路径的 Neo4j 安全图谱。
performing-active-directory-forest-trust-attack
使用 impacket 枚举和审计 Active Directory 林信任关系,进行 SID 过滤分析、信任密钥提取、跨林 SID 历史滥用检测和跨域 Kerberos 票据评估。
managing-cloud-identity-with-okta
本技能涵盖将 Okta 部署为云环境集中身份提供商,配置与 AWS、Azure 和 GCP 的 SSO 集成,使用 Okta FastPass 部署抗钓鱼 MFA,管理用户预配置和取消配置的生命周期自动化,以及基于设备态势和风险信号实施自适应访问策略。
implementing-zero-trust-with-hashicorp-boundary
使用 HashiCorp Boundary 实现具备动态凭据代理、会话录制和 Vault 集成的身份感知零信任基础设施访问管理。