你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Server DevOps Audit Settings - Create Or Update

创建或更新服务器的 DevOps 审核设置。

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/devOpsAuditingSettings/{devOpsAuditingSettingsName}?api-version=2021-11-01

URI 参数

名称 必需 类型 说明
devOpsAuditingSettingsName
path True

string

devops 审核设置的名称。 这应始终为“default”。

resourceGroupName
path True

string

包含该资源的资源组名称。 可以从 Azure 资源管理器 API 或门户获取此值。

serverName
path True

string

服务器的名称。

subscriptionId
path True

string

用于标识 Azure 订阅的订阅 ID。

api-version
query True

string

要用于请求的 API 版本。

请求正文

名称 必需 类型 说明
properties.state True

BlobAuditingPolicyState

指定审核的状态。 如果状态为“已启用”,则需要 storageEndpoint 或 isAzureMonitorTargetEnabled。

properties.isAzureMonitorTargetEnabled

boolean

指定是否将 DevOps 审核事件发送到 Azure Monitor。 若要将事件发送到 Azure Monitor,请将“State”指定为“Enabled”,将“IsAzureMonitorTargetEnabled”指定为 true。

使用 REST API 配置 DevOps 审核时,还应在 master 数据库上创建具有“DevOpsOperationsAudit”诊断日志类别的诊断设置。

诊断设置 URI 格式:PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

有关详细信息,请参阅 诊断设置 REST API诊断设置 PowerShell

properties.storageAccountAccessKey

string

指定审核存储帐户的标识符密钥。 如果状态为 Enabled 且指定 storageEndpoint,则不指定 storageAccountAccessKey 将使用 SQL Server 系统分配的托管标识来访问存储。 使用托管标识身份验证的先决条件:

  1. 在 Azure Active Directory (AAD) 中分配SQL Server系统分配的托管标识。
  2. 通过将“存储 Blob 数据参与者”RBAC 角色添加到服务器标识,授予SQL Server标识对存储帐户的访问权限。 有关详细信息,请参阅 使用托管标识身份验证审核存储
properties.storageAccountSubscriptionId

string

指定 Blob 存储订阅 ID。

properties.storageEndpoint

string

指定 blob 存储终结点 (例如 https://MyAccount.blob.core.windows.net) 。 如果状态为“已启用”,则需要 storageEndpoint 或 isAzureMonitorTargetEnabled。

响应

名称 类型 说明
200 OK

ServerDevOpsAuditingSettings

已成功更新 DevOps 审核设置。

202 Accepted

正在更新审核 DevOps 设置。

Other Status Codes

错误响应:***

  • 400 InvalidServerDevOpsAuditSettingsCreateRequest - 创建服务器 DevOps 审核策略请求不存在或没有 properties 对象。

  • 400 DataSecurityInvalidUserSuppliedParameter - 客户端提供的参数值无效。

  • 400 InvalidServerDevOpsAuditSettingsName - 服务器 DevOps 策略名称无效。

  • 400 DevOpsAuditInvalidStorageAccountCredentials - 提供的存储帐户或访问密钥无效。

  • 404 SubscriptionDoesNotHaveServer - 找不到请求的服务器

  • 404 ServerNotInSubscriptionResourceGroup - 指定的服务器不存在于指定的资源组和订阅中。

  • 409 ServerDevOpsAuditSettingsInProgress - 设置服务器 DevOps 审核已在进行中。

示例

Update a server's DevOps audit settings with all params
Update a server's DevOps audit settings with minimal input

Update a server's DevOps audit settings with all params

示例请求

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default?api-version=2021-11-01

{
  "properties": {
    "state": "Enabled",
    "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    "storageEndpoint": "https://mystorage.blob.core.windows.net",
    "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
    "isAzureMonitorTargetEnabled": true
  }
}

示例响应

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default",
  "name": "default",
  "type": "Microsoft.Sql/servers/devOpsAuditingSettings",
  "properties": {
    "state": "Enabled",
    "storageEndpoint": "https://mystorage.blob.core.windows.net",
    "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
    "isAzureMonitorTargetEnabled": true
  }
}

Update a server's DevOps audit settings with minimal input

示例请求

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default?api-version=2021-11-01

{
  "properties": {
    "state": "Enabled",
    "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    "storageEndpoint": "https://mystorage.blob.core.windows.net"
  }
}

示例响应

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default",
  "name": "default",
  "type": "Microsoft.Sql/servers/devOpsAuditingSettings",
  "properties": {
    "state": "Enabled",
    "storageEndpoint": "https://mystorage.blob.core.windows.net",
    "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000"
  }
}

定义

名称 说明
BlobAuditingPolicyState

指定审核的状态。 如果状态为“已启用”,则需要 storageEndpoint 或 isAzureMonitorTargetEnabled。

createdByType

创建资源的标识类型。

ServerDevOpsAuditingSettings

服务器 DevOps 审核设置。

systemData

与资源的创建和上次修改相关的元数据。

BlobAuditingPolicyState

指定审核的状态。 如果状态为“已启用”,则需要 storageEndpoint 或 isAzureMonitorTargetEnabled。

名称 类型 说明
Disabled

string

Enabled

string

createdByType

创建资源的标识类型。

名称 类型 说明
Application

string

Key

string

ManagedIdentity

string

User

string

ServerDevOpsAuditingSettings

服务器 DevOps 审核设置。

名称 类型 说明
id

string

资源 ID。

name

string

资源名称。

properties.isAzureMonitorTargetEnabled

boolean

指定是否将 DevOps 审核事件发送到 Azure Monitor。 若要将事件发送到 Azure Monitor,请将“State”指定为“Enabled”,将“IsAzureMonitorTargetEnabled”指定为 true。

使用 REST API 配置 DevOps 审核时,还应在 master 数据库上创建具有“DevOpsOperationsAudit”诊断日志类别的诊断设置。

诊断设置 URI 格式:PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

有关详细信息,请参阅 诊断设置 REST API诊断设置 PowerShell

properties.state

BlobAuditingPolicyState

指定审核的状态。 如果状态为“已启用”,则需要 storageEndpoint 或 isAzureMonitorTargetEnabled。

properties.storageAccountAccessKey

string

指定审核存储帐户的标识符密钥。 如果状态为 Enabled 且指定 storageEndpoint,则不指定 storageAccountAccessKey 将使用 SQL Server 系统分配的托管标识来访问存储。 使用托管标识身份验证的先决条件:

  1. 在 Azure Active Directory (AAD) 中分配SQL Server系统分配的托管标识。
  2. 通过将“存储 Blob 数据参与者”RBAC 角色添加到服务器标识,授予SQL Server标识对存储帐户的访问权限。 有关详细信息,请参阅 使用托管标识身份验证审核存储
properties.storageAccountSubscriptionId

string

指定 Blob 存储订阅 ID。

properties.storageEndpoint

string

指定 blob 存储终结点 (例如 https://MyAccount.blob.core.windows.net) 。 如果状态为“已启用”,则需要 storageEndpoint 或 isAzureMonitorTargetEnabled。

systemData

systemData

ServerDevOpsAuditSettingsResource 的 SystemData。

type

string

资源类型。

systemData

与资源的创建和上次修改相关的元数据。

名称 类型 说明
createdAt

string

资源创建时间戳 (UTC) 。

createdBy

string

创建资源的标识。

createdByType

createdByType

创建资源的标识类型。

lastModifiedAt

string

资源上次修改的时间戳 (UTC)

lastModifiedBy

string

上次修改资源的标识。

lastModifiedByType

createdByType

上次修改资源的标识类型。