You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PowerShell配置Azure SQL审计并发送日志到Event Hub的问题

Azure SQL服务器审计配置PowerShell脚本报错及相关疑问

问题场景与报错

尝试通过PowerShell结合Diagnostic Settings配置Azure SQL服务器的审计参数(标记为红色的选项),并将审计日志发送至Event Hub,使用的脚本如下:

New-AzDiagnosticSetting -ResourceId "/subscriptions/subid/resourceGroups/rgname/providers/Microsoft.Sql/servers/servername" -Name "dignnosticsettingname" -EventHubAuthorizationRuleId "/subscriptions/subidofeventhub/resourceGroups/rgofeventhub/providers/Microsoft.EventHub/namespaces/namespaceofeventhub/authorizationrules/sqlserver-sendkey" -EventHubName "sqlserver" -Log @(
    (New-AzDiagnosticSettingLogSettingsObject -CategoryGroup "SQLSecurityAuditEvents" -Enabled $true),
    (New-AzDiagnosticSettingLogSettingsObject -CategoryGroup "SQLInsights" -Enabled $true)
)

执行脚本时出现如下错误:

New-AzDiagnosticSetting : CategoryGroup: 'SQLSecurityAuditEvents' is not supported, supported ones: '' ,......

操作差异说明

手动在Azure门户操作时,对应的操作是set server blob auditing policy;但执行上述PowerShell脚本时,活动日志中记录的操作类型为create or update resource diagnostic settings并报错。查阅微软文档后仍无法确定正确语法,且发现Diagnostic Settings已更新,但门户界面无对应变化。

审计配置疑问

SQL服务器层面仅提供Audit选项,而数据库层面同时有Diagnostic Settings和Audit选项,是否需要在服务器和数据库两个层面都配置审计?

解决补充与替代方案

  • 订阅检查:若能在门户正常配置但PowerShell脚本执行失败,需确认当前使用的订阅是否正确。可通过以下命令查看和切换订阅:
    # 查看当前订阅
    Get-AzContext
    # 切换到目标订阅
    Set-AzContext -SubscriptionName SubscriptionName
    
  • SQL数据库Diagnostic Settings配置脚本:针对数据库层面的配置,可使用以下脚本:
    New-AzDiagnosticSetting -ResourceId "/subscriptions/subid/resourceGroups/rgname/providers/Microsoft.Sql/servers/servername/databases/dbname" -Name "diagniosticname" -EventHubAuthorizationRuleId "/subscriptions/subid/resourceGroups/rgname/providers/Microsoft.EventHub/namespaces/namespacename/authorizationrules/sharedaccesskeyname" -EventHubName "sqldatabaseserver" -Log @(
        (New-AzDiagnosticSettingLogSettingsObject -CategoryGroup "allLogs" -Enabled $true),
        (New-AzDiagnosticSettingLogSettingsObject -CategoryGroup "audit" -Enabled $true)
    ) -Metric @(
        (New-AzDiagnosticSettingMetricSettingsObject -Category "AllMetrics" -Enabled $true)
    )
    
  • 服务器审计替代方案:使用Set-AzSqlServerAudit命令启用服务器审计后,数据库审计会自动启用,无需单独配置数据库审计。

内容的提问来源于stack exchange,提问作者Mohsen Sichani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:42:40