计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
implementing-azure-defender-for-cloud【效率与协作】实施 Microsoft Defender for Cloud,为虚拟机、容器、数据库和存储启用云安全态势管理和工作负载保护,配置安全建议,并通过自动修复设置自适应安全控制。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
不适用于:仅针对非 Azure 工作负载的保护(使用 AWS Security Hub 或 GCP SCC)、应用级安全测试(使用 Azure DevOps DAST/SAST),或特定于身份的保护(使用 Microsoft Defender for Identity)。
为需要保护的每种工作负载类型启用相应的 Defender 计划。
# 启用 Defender for Cloud CSPM(基础态势管理)
az security pricing create --name CloudPosture --tier standard
# 启用 Defender for Servers
az security pricing create --name VirtualMachines --tier standard \
--subplan P2
# 启用 Defender for Containers
az security pricing create --name Containers --tier standard
# 启用 Defender for Storage
az security pricing create --name StorageAccounts --tier standard \
--subplan PerStorageAccount
# 启用 Defender for SQL
az security pricing create --name SqlServers --tier standard
# 启用 Defender for Key Vault
az security pricing create --name KeyVaults --tier standard
# 启用 Defender for App Service
az security pricing create --name AppServices --tier standard
# 验证所有已启用的计划
az security pricing list \
--query "[].{Plan:name, Tier:pricingTier, SubPlan:subPlan}" -o table
启用监控代理到 VM 和容器的自动部署。
# 启用 Log Analytics 代理的自动预置
az security auto-provisioning-setting update \
--name default --auto-provision on
# 配置用于数据收集的 Log Analytics 工作区
az security workspace-setting create \
--name default \
--target-workspace "/subscriptions/SUB_ID/resourceGroups/RG/providers/Microsoft.OperationalInsights/workspaces/SecurityWorkspace"
# 启用 Defender for Containers 自动预置组件
az security setting update \
--name Sentinel \
--setting-kind DataExportSettings
# 验证自动预置状态
az security auto-provisioning-setting list -o table
获取安全建议,并根据安全评分影响确定修复优先级。
# 获取当前安全评分
az security secure-score list \
--query "[].{Name:displayName, Current:current, Max:max, Percentage:percentage}" -o table
# 列出所有活跃的安全建议
az security assessment list \
--query "[?status.code=='Unhealthy'].{Name:displayName, Severity:metadata.severity, Category:metadata.category, ResourceCount:status.cause}" \
-o table
# 按严重程度排序获取建议
az security assessment list \
--query "[?status.code=='Unhealthy'] | sort_by(@, &metadata.severity)" \
-o table
# 获取包含修复步骤的详细建议
az security assessment show \
--name ASSESSMENT_ID \
--query "{Name:displayName, Description:metadata.description, Severity:metadata.severity, Remediation:metadata.remediationDescription}"
# 按控制项列出建议
az security secure-score-controls list \
--query "[].{Control:displayName, CurrentScore:current, MaxScore:max, NotHealthy:notHealthyResourceCount}" \
-o table
启用合规标准并监控跨订阅的遵从情况。
# 列出可用的监管合规标准
az security regulatory-compliance-standards list \
--query "[].{Standard:name, State:state}" -o table
# 启用特定合规标准
az security regulatory-compliance-standards update \
--name "CIS-Azure-2.0" --state "Enabled"
az security regulatory-compliance-standards update \
--name "PCI-DSS-4.0" --state "Enabled"
az security regulatory-compliance-standards update \
--name "NIST-SP-800-53-R5" --state "Enabled"
# 获取特定标准的合规状态
az security regulatory-compliance-controls list \
--standard-name "CIS-Azure-2.0" \
--query "[].{Control:id, Description:displayName, State:state, PassedResources:passedResources, FailedResources:failedResources}" \
-o table
# 获取控制项的失败评估
az security regulatory-compliance-assessments list \
--standard-name "CIS-Azure-2.0" \
--control-name "2.1" \
--query "[?state=='Failed'].{Assessment:id, State:state}" -o table
配置告警通知和自动响应工作流。
# 为告警通知创建安全联系人
az security contact create \
--name "SecurityTeam" \
--email "security-ops@company.com" \
--phone "+1-555-0199" \
--alert-notifications on \
--alerts-to-admins on
# 列出活跃安全告警
az security alert list \
--query "[?status=='Active'].{Name:alertDisplayName, Severity:severity, Time:timeGeneratedUtc, Status:status}" \
-o table
# 为高严重性告警创建工作流自动化(Logic App 触发器)
az security automation create \
--name "high-severity-alert-response" \
--resource-group "security-rg" \
--scopes "[{\"description\":\"完整订阅\",\"scopePath\":\"/subscriptions/SUB_ID\"}]" \
--sources "[{
\"eventSource\":\"Alerts\",
\"ruleSets\":[{
\"rules\":[{
\"propertyJPath\":\"Severity\",
\"propertyType\":\"String\",
\"expectedValue\":\"High\",
\"operator\":\"Equals\"
}]
}]
}]" \
--actions "[{
\"logicAppResourceId\":\"/subscriptions/SUB_ID/resourceGroups/security-rg/providers/Microsoft.Logic/workflows/alert-response\",
\"actionType\":\"LogicApp\"
}]"
配置用于运行时安全的高级工作负载保护功能。
# 启用 Just-In-Time 虚拟机访问
az security jit-policy create \
--resource-group "production-rg" \
--name "jit-policy" \
--virtual-machines "[{
\"id\":\"/subscriptions/SUB_ID/resourceGroups/production-rg/providers/Microsoft.Compute/virtualMachines/web-server-01\",
\"ports\":[
{\"number\":22,\"protocol\":\"TCP\",\"allowedSourceAddressPrefix\":\"*\",\"maxRequestAccessDuration\":\"PT3H\"},
{\"number\":3389,\"protocol\":\"TCP\",\"allowedSourceAddressPrefix\":\"*\",\"maxRequestAccessDuration\":\"PT3H\"}
]
}]"
# 需要时申请 JIT 访问
az security jit-policy initiate \
--resource-group "production-rg" \
--name "jit-policy" \
--virtual-machines "[{
\"id\":\"VM_ID\",
\"ports\":[{\"number\":22,\"endTimeUtc\":\"2026-02-23T15:00:00Z\",\"allowedSourceAddressPrefix\":\"10.0.1.50\"}]
}]"
# 审查自适应应用控制建议
az security adaptive-application-controls list \
--query "[].{Group:displayName, Recommendation:recommendationAction, VMCount:vmRecommendations|length(@)}" \
-o table
| 术语 | 定义 |
|---|---|
| Microsoft Defender for Cloud | Azure 原生安全平台,在 Azure、混合和多云环境中提供 CSPM(云安全态势管理)和 CWP(云工作负载保护) |
| 安全评分(Secure Score) | 基于已实施安全建议百分比的组织安全态势数值衡量指标 |
| 安全建议(Security Recommendation) | Defender for Cloud 提供的可操作指导,用于改善安全态势,按严重程度和安全评分影响排列优先级 |
| Defender 计划(Defender Plan) | 针对特定资源类型启用高级威胁检测的工作负载专用保护层(服务器、容器、SQL、存储等) |
| 实时虚拟机访问(Just-In-Time VM Access) | 默认阻止管理端口(SSH/RDP)并按需授予限时访问权限的功能,可降低攻击面 |
| 自适应应用控制(Adaptive Application Controls) | 基于机器学习的白名单机制,推荐哪些应用程序应允许在 VM 上运行 |
场景背景:一家拥有 20 个 Azure 订阅的企业需要启用具有服务器、容器和 SQL 保护的 Defender for Cloud,同时针对 CIS Azure 2.0 建立合规基线。
方法:
常见陷阱:Defender for Servers P2 按服务器每小时计费。对于拥有大量虚拟机的环境,成本可能快速增加。开发订阅使用 Defender for Servers P1,仅在生产环境使用 P2。代理自动预置可能与 SCCM 或其他工具管理的现有代理部署产生冲突。
Microsoft Defender for Cloud 部署报告
=================================================
组织: Acme Corp
订阅数量: 20(12 个生产,8 个非生产)
部署日期: 2026-02-23
已启用的 DEFENDER 计划:
CloudPosture (CSPM): 20 / 20 个订阅
Servers P2: 12 / 20(仅生产)
Containers: 12 / 20(仅生产)
SQL: 12 / 20(仅生产)
Storage: 20 / 20 所有订阅
Key Vault: 20 / 20 所有订阅
安全评分:
当前: 62%(基线)
目标: 90 天内达到 80%
合规状态(CIS Azure 2.0):
合规控制项: 78 / 142(55%)
不合规控制项: 52 / 142
不适用: 12 / 142
建议:
严重: 8 条建议影响 34 个资源
高: 24 条建议影响 89 个资源
中: 56 条建议影响 234 个资源
低: 34 条建议影响 112 个资源
安全告警(过去 7 天):
高严重性: 3
中严重性: 12
低严重性: 28