Implements Microsoft Defender for Cloud in Azure to enable CSPM and workload protection for VMs, containers, SQL, storage, Key Vault; configures security recommendations and auto-remediation via Azure CLI.
npx claudepluginhub killvxk/cybersecurity-skills-zhThis skill uses the workspace's default tool permissions.
- 跨 Azure 订阅启用全面安全监控时
Implements Microsoft Defender for Cloud for cloud security posture management, workload protection across Azure VMs, containers, databases, storage, security recommendations, and adaptive controls with automated remediation.
Implements Microsoft Defender for Cloud for CSPM, workload protection across Azure VMs, containers, databases, storage; configures security recommendations and automated remediation.
Deploys Microsoft Defender for Cloud as CNAPP for Azure, multi-cloud, and hybrid environments. Enables plans for servers, containers, storage, databases; manages Secure Score, recommendations, and Defender portal integration.
Share bugs, ideas, or general feedback.
不适用于:仅针对非 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