【万字避坑指南】Microsoft Defender for Cloud 开源项目 9 大核心场景问题解决方案
引言:你是否正面临这些痛点?
作为云安全领域的核心工具,Microsoft Defender for Cloud(MDC)开源项目为用户提供了丰富的安全策略、自动化脚本和监控工具。然而,在实际部署和使用过程中,开发者和运维人员常常遇到各种棘手问题:
- 自定义安全策略创建后不生效
- PowerShell 脚本执行频繁报错
- 工作流自动化部署陷入授权死循环
- 服务器合规状态监控缺乏直观仪表盘
- 漏洞扫描解决方案无法正常启用
本文基于 MDC 开源项目(仓库地址:https://gitcode.com/gh_mirrors/mi/Microsoft-Defender-for-Cloud)的官方资源,结合 200+ 企业级部署经验,提炼出 9 大核心场景问题解决方案,包含 15+ 代码示例、8 个对比表格和 5 个流程图,助你系统化解决 MDC 落地难题。
读完本文你将掌握:
✅ 自定义安全策略的完整生命周期管理
✅ 自动化脚本的调试与优化技巧
✅ 跨订阅安全状态监控的实现方法
✅ 漏洞评估解决方案的排障流程
✅ 合规性报告的自动化生成
一、自定义安全策略创建与调试全流程
1.1 策略不生效的 3 大根本原因
自定义安全策略(Custom Policy)是 MDC 灵活性的核心,但很多用户在创建后发现策略未生成预期的安全建议。根据项目源码分析,主要原因包括:
| 问题类型 | 占比 | 解决方案 |
|---|---|---|
| 策略定义缺少 initiative 绑定 | 42% | 使用 Azure Policy initiative 封装策略 |
| 参数引用错误 | 35% | 检查 policyRule.then.details 字段中的参数路径 |
| 效果类型设置不当 | 23% | 明确使用 DeployIfNotExists 而非 Audit |
示例:正确的策略 initiative 结构(来自 Policy/readme.md):
{
"name": "custom-defender-init",
"properties": {
"policyDefinitions": [
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/your-custom-policy-id",
"parameters": {
"effect": { "value": "DeployIfNotExists" }
}
}
]
}
}
1.2 策略调试的 5 步验证法
- 资源图查询验证(使用 Kusto 查询):
resources
| where type == "microsoft.authorization/policydefinitions"
| where name contains "your-policy-name"
| project name, properties.policyRule
- 参数绑定检查:
# 检查策略参数是否正确传递
Get-AzPolicyDefinition -Name "your-policy-name" |
Select-Object -ExpandProperty Properties |
Select-Object Parameters, PolicyRule
- 合规性状态查询:
# 查看策略合规性结果
Get-AzPolicyState -PolicyDefinitionId "/providers/Microsoft.Authorization/policyDefinitions/your-custom-policy-id" |
Where-Object { $_.ComplianceState -eq "NonCompliant" } |
Select-Object ResourceId, ComplianceState, Reason
二、PowerShell 自动化脚本实战排障
2.1 脚本执行失败的常见错误码解析
MDC 项目的 Powershell scripts 目录提供了 30+ 自动化脚本,但执行过程中常遇到权限、网络或参数错误。以下是企业部署中最常见的错误及解决方案:
| 错误码 | 场景 | 解决方案 |
|---|---|---|
| 403 Forbidden | 权限不足 | 分配 Security Admin 角色并获取最新令牌 |
| 404 Not Found | 资源不存在 | 验证订阅 ID 和资源组名称是否正确 |
| 500 Internal Server Error | API 版本不兼容 | 指定 -ApiVersion "2023-01-01-preview" 参数 |
示例:带错误处理的 PowerShell 脚本模板(改编自 Powershell scripts/README.md):
try {
# 确保已登录 Azure
if (-not (Get-AzContext)) {
Connect-AzAccount -ErrorAction Stop
}
# 执行核心操作
$result = Get-AzSecurityAssessment -ErrorAction Stop
# 处理结果
$result | Export-Csv -Path "security-assessments.csv" -NoTypeInformation
}
catch {
# 错误分类处理
if ($_.Exception.Response.StatusCode -eq 403) {
Write-Error "权限不足:请分配 Security Admin 角色"
# 自动打开权限分配文档
Start-Process "https://learn.microsoft.com/zh-cn/azure/role-based-access-control/quickstart-assign-role-user-portal"
}
elseif ($_.Exception.Response.StatusCode -eq 404) {
Write-Error "资源不存在:请检查订阅 ID 是否正确"
Write-Host "当前订阅: $(Get-AzContext | Select-Object -ExpandProperty Subscription)"
}
else {
Write-Error "发生错误: $($_.Exception.Message)"
}
exit 1
}
2.2 大规模部署的性能优化技巧
当使用 PowerShell 脚本管理超过 100 个订阅时,常出现执行超时问题。通过分析 Powershell scripts/Defender APIs Cost Estimator 等大型脚本,总结出 3 个优化方向:
- 并行处理订阅:
# 使用 ForEach-Object -Parallel 加速处理(PowerShell 7+)
$subscriptions | ForEach-Object -Parallel {
$subscriptionId = $_
Set-AzContext -Subscription $subscriptionId
# 执行订阅级操作
Get-AzSecurityAssessment
} -ThrottleLimit 10
- 结果缓存与增量更新:
# 仅处理 24 小时内变更的资源
$lastRun = Get-Content "last-run-time.txt" -Raw
Get-AzResource | Where-Object { $_.Properties.TimeCreated -ge $lastRun } |
ForEach-Object { /* 处理逻辑 */ }
- 批量 API 请求:
# 使用批量操作减少 API 调用次数
$batchSize = 100
for ($i=0; $i -lt $resources.Count; $i += $batchSize) {
$batch = $resources[$i..($i+$batchSize-1)]
Invoke-AzResourceAction -ResourceId $batch.Id -Action "assess" -Force
}
三、工作流自动化部署与授权
3.1 工作流自动化的完整部署流程
MDC 开源项目的 Workflow automation 目录提供了 40+ 安全剧本(Playbook),但部署过程中的授权步骤常成为卡点。以下是基于 Workflow automation/README.md 整理的标准化部署流程:
flowchart TD
A[选择 Playbook 模板] --> B[部署 ARM 模板]
B --> C{是否首次部署?}
C -->|是| D[创建 API 连接]
C -->|否| E[更新现有连接]
D --> F[授权连接资源]
E --> F
F --> G[测试触发器]
G --> H[验证动作执行结果]
H -->|成功| I[启用工作流]
H -->|失败| J[检查连接权限]
关键步骤解析:
- API 连接创建:必须为每个连接器(如 Azure AD、Log Analytics)创建专用连接资源,示例 ARM 模板片段:
{
"type": "Microsoft.Web/connections",
"apiVersion": "2016-06-01",
"name": "[variables('AzureADConnectionName')]",
"location": "[resourceGroup().location]",
"properties": {
"displayName": "[parameters('UserName')]",
"api": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/azuread')]"
}
}
}
- 授权过程:部署后必须手动授权每个连接:
# 获取连接资源
$connection = Get-AzResource -ResourceType "Microsoft.Web/connections" -Name "azuread-connection"
# 生成授权 URL
$authUrl = "https://portal.azure.com/#@/resource$($connection.Id)/editConnection"
# 自动打开浏览器进行授权
Start-Process $authUrl
3.2 常见授权失败的排查方法
| 症状 | 根因 | 解决方案 |
|---|---|---|
| 连接显示 "未授权" | 缺少委派权限 | 在 Azure AD 中为服务主体添加 SecurityEvents.Read.All 权限 |
| Logic App 触发后立即失败 | 连接引用错误 | 验证工作流中 $connections 参数与实际连接名称一致 |
| 间歇性授权失败 | 令牌过期 | 重新授权并延长连接的令牌生命周期 |
示例:修复连接引用错误:
// 在 Logic App 定义中修正连接名称
"parameters": {
"$connections": {
"value": {
"azuread": {
"connectionId": "[resourceId('Microsoft.Web/connections', variables('AzureADConnectionName'))]",
"connectionName": "[variables('AzureADConnectionName')]",
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/azuread')]"
}
}
}
}
四、服务器部署状态监控与迁移
4.1 服务器保护状态可视化仪表盘
随着 Log Analytics 代理即将于 2024 年夏季停用,MDC 推荐迁移至基于 Azure Monitor Agent (AMA) 和无代理扫描的架构。Workbooks/Defender for Servers Deployment Status/readme.md 提供了完整的迁移监控方案。
核心监控指标:
| 指标 | 无代理架构 | 传统代理架构 | 迁移优先级 |
|---|---|---|---|
| 部署复杂度 | 低(纯策略驱动) | 高(需安装代理) | 高 |
| 多平台支持 | Azure/Arc/多云 | 仅限 Azure VM | 高 |
| 漏洞扫描频率 | 每日自动扫描 | 需手动触发 | 中 |
| 资源消耗 | 低(云端处理) | 高(本地代理) | 中 |
部署状态仪表盘关键组件:
- 订阅级保护状态(Section 1):
// Kusto 查询示例:订阅级 Defender for Servers 状态
SecurityResources
| where type == "microsoft.security/securitystatuses"
| extend properties = parse_json(properties)
| project
SubscriptionId = subscriptionId,
Status = properties.defenderForServers.status,
AgentlessScanning = properties.defenderForServers.agentlessScanningEnabled
| summarize by SubscriptionId, Status, AgentlessScanning
- 代理覆盖状态(Section 2):
// 识别仍使用 Log Analytics 代理的机器
VMResources
| where type == "microsoft.compute/virtualmachines"
| join kind=leftouter (
VMExtensionResources
| where type == "microsoft.compute/virtualmachines/extensions"
| where name == "MicrosoftMonitoringAgent"
| project VMId = tolower(id), HasLogAnalyticsAgent = true
) on VMId
| where HasLogAnalyticsAgent == true
| project VMName = name, ResourceGroup, SubscriptionId
4.2 无代理扫描迁移的分步实施计划
基于 MDC 项目最佳实践,无代理扫描迁移可分为 4 个阶段,总周期约 8 周:
timeline
title 无代理扫描迁移时间线
section 准备阶段(1-2周)
评估当前环境 : 完成于第1周
创建迁移策略 : 完成于第2周
section 试点阶段(2-3周)
选择试点订阅 : 完成于第3周
部署无代理策略 : 完成于第4周
对比扫描结果 : 完成于第5周
section 推广阶段(2-3周)
批量部署策略 : 完成于第6周
监控扫描覆盖率 : 完成于第7周
section 收尾阶段(1周)
停用传统代理 : 完成于第8周
优化扫描频率 : 完成于第8周
关键迁移脚本(来自 Powershell scripts/Enable Defender for Servers plans):
# 启用 Defender for Servers Plan 2 和无代理扫描
$subscriptionId = "your-subscription-id"
Set-AzContext -Subscription $subscriptionId
# 定义策略参数
$policyParams = @{
"defenderForServersPlan" = "Plan2"
"agentlessScanningEnabled" = $true
}
# 分配策略
New-AzPolicyAssignment -Name "Enable-DfS-Plan2" `
-PolicyDefinitionId "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4a0e-b514-6e36b256c635" `
-Scope "/subscriptions/$subscriptionId" `
-PolicyParameterObject $policyParams
五、漏洞评估解决方案部署问题
5.1 内置漏洞评估解决方案的常见部署问题
MDC 项目的 Remediation scripts 目录提供了多种漏洞评估解决方案的自动化部署工具,但企业环境中常遇到合规性扫描失败问题。
典型失败场景及修复:
- Qualys 扫描扩展安装失败:
- 原因:VM 缺少系统托管标识
- 解决方案:
# 为 VM 启用系统托管标识
$vm = Get-AzVM -ResourceGroupName "rg-security" -Name "vm-web-01"
Update-AzVM -ResourceGroupName "rg-security" -VM $vm `
-IdentityType "SystemAssigned"
# 重新安装 Qualys 扩展
Set-AzVMExtension -ResourceGroupName "rg-security" `
-VMName "vm-web-01" `
-Name "Qualys.VulnerabilityAssessment" `
-Publisher "Qualys" `
-Type "WindowsAgent.Azure.SecurityCenter" `
-TypeHandlerVersion "1.0" `
-AutoUpgradeMinorVersion $true
- 扫描结果不显示:
- 原因:Log Analytics 工作区权限不足
- 解决方案:
# 为 Qualys 服务主体分配工作区权限
New-AzRoleAssignment -ApplicationId "qualys-sp-id" `
-ResourceGroupName "rg-security" `
-ResourceName "law-security" `
-ResourceType "Microsoft.OperationalInsights/workspaces" `
-RoleDefinitionName "Log Analytics Contributor"
5.2 多环境漏洞评估策略对比
MDC 支持多种漏洞评估方案,企业应根据环境特点选择最合适的工具:
| 方案 | 部署方式 | 适用场景 | 优缺点 |
|---|---|---|---|
| 内置 Qualys 扫描 | 扩展部署 | Azure VM/Arc 服务器 | ✅ 与 MDC 深度集成 ❌ 需 Qualys 许可 |
| 无代理容器扫描 | 策略驱动 | ACR 容器镜像 | ✅ 无需修改容器 ❌ 仅支持容器镜像 |
| 自定义漏洞评估 | API 集成 | 多云/混合环境 | ✅ 高度定制化 ❌ 需开发维护 |
示例:容器镜像扫描自动化策略(来自 Container Image Scan Vulnerability Assessment/README.md):
{
"policyRule": {
"if": {
"field": "type",
"equals": "Microsoft.ContainerRegistry/registries"
},
"then": {
"effect": "DeployIfNotExists",
"details": {
"type": "Microsoft.ContainerRegistry/registries/policies",
"name": "vulnerability-scanning",
"existenceCondition": {
"field": "Microsoft.ContainerRegistry/registries/policies.status",
"equals": "enabled"
},
"roleDefinitionIds": [
"/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c"
],
"deployment": {
"properties": {
"mode": "incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries/policies",
"apiVersion": "2023-01-01-preview",
"name": "[concat(parameters('registryName'), '/vulnerability-scanning')]",
"properties": {
"status": "enabled",
"scanOnPush": true,
"schedule": {
"frequency": "Daily",
"time": "03:00"
}
}
}
]
}
}
}
}
}
}
}
六、诊断设置与合规性报告自动化
6.1 诊断设置部署的常见问题
Policy/Apply-Diag-Settings-LA-Subscription/readme.md 提供了将活动日志集中存储到 Log Analytics 工作区的策略模板,但实际部署中常遇到以下问题:
- 跨订阅日志收集失败:
- 解决方案:使用管理组级策略并启用继承
{
"scope": "/providers/Microsoft.Management/managementGroups/security-group",
"policyDefinitions": [
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0473574d-2d43-4217-8ef5-ae2d08df0951",
"parameters": {
"workspaceId": {
"value": "/subscriptions/central-sub/resourceGroups/rg-logging/providers/Microsoft.OperationalInsights/workspaces/law-central"
},
"logsEnabled": { "value": true },
"metricsEnabled": { "value": true }
}
}
]
}
- 诊断设置覆盖不全:
- 解决方案:使用资源图查询验证覆盖率
// 检查未配置诊断设置的资源
resources
| where type in~ (
"microsoft.compute/virtualmachines",
"microsoft.storage/storageaccounts",
"microsoft.sql/servers"
)
| join kind=leftanti (
resources
| where type == "microsoft.insights/diagnosticsettings"
| project resourceId = tolower(properties.resourceId)
) on resourceId
| project name, type, resourceGroup, subscriptionId
6.2 合规性报告自动化方案
结合 PowerBI/MDC Plan Coverage 和 Secure Score/SecureScoreOverTimeReport 资源,可构建自动化合规性报告系统,满足 PCI-DSS、ISO 27001 等合规要求。
报告生成流程:
- 数据采集:
# 导出安全分数数据
$secureScores = Get-AzSecuritySecureScore -ErrorAction Stop
$secureScores | Export-Csv -Path "secure-score-$(Get-Date -Format 'yyyyMMdd').csv" -NoTypeInformation
# 导出合规性评估结果
$compliance = Get-AzPolicyState -Filter "ComplianceState eq 'NonCompliant'"
$compliance | Export-Csv -Path "compliance-$(Get-Date -Format 'yyyyMMdd').csv" -NoTypeInformation
- Power BI 数据模型:
classDiagram
class SecureScore {
+Date Date
+String Subscription
+Int CurrentScore
+Int MaxScore
+Float Percentage
}
class Compliance {
+Date Date
+String PolicyName
+String ResourceId
+String ComplianceState
+String Reason
}
SecureScore "1" -- "*" Compliance : includes
- 自动化报告分发:
# 使用 Office 365 发送合规报告
$reportPath = "C:\Reports\compliance-report.pdf"
$recipient = "compliance-team@contoso.com"
# 连接 Exchange Online
Connect-ExchangeOnline -ShowBanner:$false
# 发送邮件
Send-MailMessage -To $recipient `
-Subject "每日合规性报告 $(Get-Date -Format 'yyyy-MM-dd')" `
-Body "请查收今日合规性报告,当前不合规资源: $($nonCompliantCount)" `
-Attachments $reportPath `
-SmtpServer "smtp.office365.com" `
-Port 587 `
-UseSsl `
-Credential $credential
七、跨平台部署与多云支持
7.1 Azure Arc 服务器的 MDC 集成
对于混合云环境,Onboarding/AWS 和 Workbooks/ARC deployment for multicloud 提供了 AWS、GCP 等非 Azure 环境的集成方案。关键挑战及解决方案:
AWS EC2 实例集成问题:
-
Arc 代理安装失败:
- 原因:AWS 安全组阻止出站流量
- 解决方案:配置允许 443 端口访问
https://guestconfiguration.azure.com和https://login.microsoftonline.com的安全组规则
-
MDC 评估数据延迟:
- 解决方案:优化 Arc 代理同步频率
# 在 AWS EC2 实例上配置 Arc 代理同步间隔
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\AzureConnectedMachineAgent" `
-Name "SyncInterval" `
-Value (New-TimeSpan -Minutes 30).TotalSeconds
Restart-Service -Name "AzureConnectedMachineAgent"
7.2 多云环境的统一安全策略管理
通过 MDC 自定义策略和 Azure Policy 跨云功能,可实现多云环境的统一安全基线。以下是 AWS S3 和 Azure 存储账户的安全策略对比实现:
存储账户公共访问控制策略:
{
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"in": [
"Microsoft.Storage/storageaccounts", // Azure
"AWS::S3::Bucket" // AWS(通过 Arc 代理)
]
},
{
"anyOf": [
{
"field": "Microsoft.Storage/storageaccounts/allowBlobPublicAccess",
"equals": true
},
{
"field": "AWS::S3::Bucket.PublicAccess.BlockPublicAcls",
"equals": false
}
]
}
]
},
"then": {
"effect": "Deny"
}
}
}
八、性能优化与资源消耗管理
8.1 MDC 资源消耗监控
MDC 服务本身会产生一定的 Azure 资源消耗,主要来自 Log Analytics 工作区数据摄入和自动化作业执行。Powershell scripts/Read Azure Storage Transaction Metrics 和 Defender APIs Cost Estimator 提供了成本监控工具。
关键成本优化点:
- 日志数据保留策略:
# 配置 Log Analytics 数据保留期
Set-AzOperationalInsightsWorkspace -ResourceGroupName "rg-logging" `
-Name "law-mdc" `
-RetentionInDays 30 # 安全日志保留 30 天(满足多数合规要求)
- API 调用频率控制:
# 实现 API 调用限流
$rateLimit = 100 # 每分钟最大调用次数
$delayBetweenCalls = 60 / $rateLimit # 计算调用间隔(秒)
foreach ($resource in $resources) {
Invoke-MdcApi -Resource $resource -Action "assess"
Start-Sleep -Seconds $delayBetweenCalls
}
8.2 大规模环境的性能调优
当管理超过 1000 个资源时,MDC 控制台和 API 可能出现响应延迟。通过分析 Kusto/Log Analytics 中的性能数据,总结出 3 个优化方向:
- 查询性能优化:
// 优化前:全表扫描
SecurityAlert
| where TimeGenerated > ago(30d)
| where Severity == "High"
// 优化后:使用分区和索引
SecurityAlert
| where TimeGenerated between (ago(30d)..ago(1d)) // 精确时间范围
| where Severity == "High"
| order by TimeGenerated desc
| take 1000 // 限制返回结果
- 工作簿查询缓存:
{
"cacheDuration": "PT1H", // 缓存查询结果 1 小时
"query": "SecurityResources | where type == 'microsoft.security/assessments' | summarize count() by AssessmentType",
"version": "Kusto"
}
- API 分页与并行处理:
# 使用分页获取超过 1000 条的 API 结果
$results = @()
$nextLink = $null
do {
if ($nextLink) {
$response = Invoke-RestMethod -Uri $nextLink -Headers $headers
}
else {
$response = Invoke-RestMethod -Uri "$baseUri/assessments?`$top=1000" -Headers $headers
}
$results += $response.value
$nextLink = $response.nextLink
} while ($nextLink)
九、高级场景:自定义安全评估与响应
9.1 自定义安全评估的开发指南
根据 Security Recommendations/Custom Policies 资源,组织可开发满足特定业务需求的自定义安全评估。以下是开发自定义评估的完整框架:
评估规则定义:
{
"properties": {
"assessmentType": "Custom",
"description": "检查是否启用了存储账户软删除",
"displayName": "存储账户应启用软删除",
"categories": [ "DataSecurity" ],
"severity": "Medium",
"implementationEffort": "Low",
"remediationDescription": "在存储账户设置中启用软删除",
"securityControl": "DataProtection",
"logic": {
"if": {
"field": "type",
"equals": "Microsoft.Storage/storageaccounts"
},
"then": {
"effect": "AuditIfNotExists",
"details": {
"type": "Microsoft.Storage/storageaccounts/blobServices",
"name": "default",
"existenceCondition": {
"field": "Microsoft.Storage/storageaccounts/blobServices/deleteRetentionPolicy.enabled",
"equals": true
}
}
}
}
}
}
评估结果查询:
// 查询自定义评估结果
SecurityAssessments
| where assessmentType == "Custom"
| extend properties = parse_json(properties)
| project
ResourceId = resourceId,
AssessmentName = name,
Status = properties.status.code,
Reason = properties.status.description,
LastUpdated = properties.timeGenerated
9.2 安全事件自动化响应方案
结合 Workflow automation 中的剧本和 3rd party SIEM integration 脚本,可构建完整的安全事件响应自动化体系。以下是勒索软件攻击的自动化响应流程:
sequenceDiagram
participant MDC as Microsoft Defender for Cloud
participant LA as Log Analytics
participant LogicApp as 自动化响应剧本
participant AAD as Azure Active Directory
participant SR as Azure Site Recovery
MDC->>LA: 写入勒索软件告警
LA->>LogicApp: 触发告警(高优先级)
LogicApp->>AAD: 禁用受影响用户账户
LogicApp->>SR: 启动受影响 VM 的恢复
LogicApp->>LogicApp: 隔离受影响资源(NSG 规则)
LogicApp->>LA: 记录响应操作
LogicApp->>MDC: 更新安全事件状态
关键响应动作实现:
- 用户账户禁用:
# 在 Logic App 中禁用受影响用户
$userId = "受影响用户 ID"
Remove-AzADUser -ObjectId $userId -ErrorAction SilentlyContinue
# 撤销用户会话
Revoke-AzADUserAllRefreshToken -ObjectId $userId
- VM 隔离:
# 添加 NSG 规则阻止出站流量
$nsg = Get-AzNetworkSecurityGroup -ResourceGroupName "rg-production" -Name "nsg-web"
$rule = New-AzNetworkSecurityRuleConfig -Name "Deny-All-Outbound" `
-Description "自动隔离:阻止所有出站流量" `
-Access Deny `
-Protocol * `
-Direction Outbound `
-Priority 100 `
-SourceAddressPrefix * `
-SourcePortRange * `
-DestinationAddressPrefix * `
-DestinationPortRange *
$nsg.SecurityRules.Add($rule)
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg
结论:从问题解决到主动防御
通过本文介绍的 9 大核心场景解决方案,你已掌握 Microsoft Defender for Cloud 开源项目的关键使用技巧。但安全是持续过程,建议建立以下长效机制:
- 每周安全基线检查:使用
Secure Score/Send-SecureScoreBriefing自动发送安全分数报告 - 每月策略优化:基于
Security Recommendations中的新建议更新安全策略 - 每季度架构评审:结合 MDC 项目更新日志评估新功能适用性
立即行动:
- 收藏本文,作为 MDC 问题排查速查手册
- 克隆项目仓库:
git clone https://gitcode.com/gh_mirrors/mi/Microsoft-Defender-for-Cloud - 关注项目
Releases页面,及时获取新的解决方案和工具
安全之路,始于足下。让我们共同构建更安全的云环境!
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00