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

ExtendedDatabaseBlobAuditingPolicyProperties interface

扩展数据库 blob 审计策略的属性。

属性

auditActionsAndGroups

指定要审核的 Actions-Groups 和作。

建议使用的作组集是以下组合 - 这将审核针对数据库执行的所有查询和存储过程,以及成功和失败的登录:

BATCH_COMPLETED_GROUP,SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,FAILED_DATABASE_AUTHENTICATION_GROUP。

上述组合也是启用 Azure 门户审计时默认配置的组合。

要审核的受支持作组(注意:仅选择涵盖审核需求的特定组。使用不必要的组可能会导致大量审核记录):

APPLICATION_ROLE_CHANGE_PASSWORD_GROUP BACKUP_RESTORE_GROUP DATABASE_LOGOUT_GROUP DATABASE_OBJECT_CHANGE_GROUP DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP DATABASE_OBJECT_PERMISSION_CHANGE_GROUP DATABASE_OPERATION_GROUP DATABASE_PERMISSION_CHANGE_GROUP DATABASE_PRINCIPAL_CHANGE_GROUP DATABASE_PRINCIPAL_IMPERSONATION_GROUP DATABASE_ROLE_MEMBER_CHANGE_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP SCHEMA_OBJECT_ACCESS_GROUP SCHEMA_OBJECT_CHANGE_GROUP SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP USER_CHANGE_PASSWORD_GROUP BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP

这些组涵盖针对数据库执行的所有 sql 语句和存储过程,不应与其他组结合使用,因为这将导致重复的审核日志。

有关详细信息,请参阅 Database-Level 审核作组

对于数据库审核策略,还可以指定特定作(请注意,不能为服务器审核策略指定作)。 支持的审计作包括:选择、更新、插入、删除、执行、接收引用

定义待审计动作的一般形式为:{action} 对 {object} 由 {principal} 进行

请注意,采用上述格式的 <对象> 可以引用表、视图或存储过程或整个数据库或架构等对象。 对于后一种情况,将分别使用 FORMS DATABASE::{db_name} 和 SCHEMA::{schema_name}。

例如:在 dbo.myTable 上按 公用 在 DATABASE::myDatabase 上选 公用 在 SCHEMA::mySchema 上用公用 SELECT 在 SCHEMA::mySchema 上 由 public 推举

有关详细信息,请参阅 Database-Level 审核作

isAzureMonitorTargetEnabled

指定审计事件是否发送到Azure Monitor。 为了将事件发送到 Azure Monitor,请将“State”设置为“Enabled”,“IsAzureMonitorTargetEnabled”为true。

使用 REST API 配置审核时,还应在数据库上创建具有“SQLSecurityAuditEvents”诊断日志类别的诊断设置。 请注意,对于服务器级别审核,应使用“master”数据库作为 {databaseName}。

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

更多信息请参见 诊断设置 REST APIDiagnostic Settings PowerShell

isManagedIdentityInUse

指定是否使用托管标识访问 Blob 存储

isStorageSecondaryKeyInUse

指定 storageAccountAccessKey 值是否为存储的辅助密钥。

predicateExpression

指定创建审核时 where 子句的条件。

queueDelayMs

指定在强制处理审核操作之前可经过的时间量(以毫秒为单位)。 默认值为 1000(1 秒)。 最大值为 2,147,483,647。

retentionDays

指定要保留在存储帐户中的审核日志中的天数。

state

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

storageAccountAccessKey

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

  1. 在 Azure Active Directory (AAD) 中为 SQL Server 分配系统指定的管理身份。
  2. 通过在服务器身份中添加“Storage Blob Data Contributor”(存储 Blob 数据贡献者)角色,赋予 SQL Server 身份访问存储账户的权限。 有关详细信息,请参阅 使用托管标识身份验证对存储的审核
storageAccountSubscriptionId

指定 Blob 存储订阅 ID。

storageEndpoint

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

属性详细信息

auditActionsAndGroups

指定要审核的 Actions-Groups 和作。

建议使用的作组集是以下组合 - 这将审核针对数据库执行的所有查询和存储过程,以及成功和失败的登录:

BATCH_COMPLETED_GROUP,SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,FAILED_DATABASE_AUTHENTICATION_GROUP。

上述组合也是启用 Azure 门户审计时默认配置的组合。

要审核的受支持作组(注意:仅选择涵盖审核需求的特定组。使用不必要的组可能会导致大量审核记录):

APPLICATION_ROLE_CHANGE_PASSWORD_GROUP BACKUP_RESTORE_GROUP DATABASE_LOGOUT_GROUP DATABASE_OBJECT_CHANGE_GROUP DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP DATABASE_OBJECT_PERMISSION_CHANGE_GROUP DATABASE_OPERATION_GROUP DATABASE_PERMISSION_CHANGE_GROUP DATABASE_PRINCIPAL_CHANGE_GROUP DATABASE_PRINCIPAL_IMPERSONATION_GROUP DATABASE_ROLE_MEMBER_CHANGE_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP SCHEMA_OBJECT_ACCESS_GROUP SCHEMA_OBJECT_CHANGE_GROUP SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP USER_CHANGE_PASSWORD_GROUP BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP

这些组涵盖针对数据库执行的所有 sql 语句和存储过程,不应与其他组结合使用,因为这将导致重复的审核日志。

有关详细信息,请参阅 Database-Level 审核作组

对于数据库审核策略,还可以指定特定作(请注意,不能为服务器审核策略指定作)。 支持的审计作包括:选择、更新、插入、删除、执行、接收引用

定义待审计动作的一般形式为:{action} 对 {object} 由 {principal} 进行

请注意,采用上述格式的 <对象> 可以引用表、视图或存储过程或整个数据库或架构等对象。 对于后一种情况,将分别使用 FORMS DATABASE::{db_name} 和 SCHEMA::{schema_name}。

例如:在 dbo.myTable 上按 公用 在 DATABASE::myDatabase 上选 公用 在 SCHEMA::mySchema 上用公用 SELECT 在 SCHEMA::mySchema 上 由 public 推举

有关详细信息,请参阅 Database-Level 审核作

auditActionsAndGroups?: string[]

属性值

string[]

isAzureMonitorTargetEnabled

指定审计事件是否发送到Azure Monitor。 为了将事件发送到 Azure Monitor,请将“State”设置为“Enabled”,“IsAzureMonitorTargetEnabled”为true。

使用 REST API 配置审核时,还应在数据库上创建具有“SQLSecurityAuditEvents”诊断日志类别的诊断设置。 请注意,对于服务器级别审核,应使用“master”数据库作为 {databaseName}。

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

更多信息请参见 诊断设置 REST APIDiagnostic Settings PowerShell

isAzureMonitorTargetEnabled?: boolean

属性值

boolean

isManagedIdentityInUse

指定是否使用托管标识访问 Blob 存储

isManagedIdentityInUse?: boolean

属性值

boolean

isStorageSecondaryKeyInUse

指定 storageAccountAccessKey 值是否为存储的辅助密钥。

isStorageSecondaryKeyInUse?: boolean

属性值

boolean

predicateExpression

指定创建审核时 where 子句的条件。

predicateExpression?: string

属性值

string

queueDelayMs

指定在强制处理审核操作之前可经过的时间量(以毫秒为单位)。 默认值为 1000(1 秒)。 最大值为 2,147,483,647。

queueDelayMs?: number

属性值

number

retentionDays

指定要保留在存储帐户中的审核日志中的天数。

retentionDays?: number

属性值

number

state

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

state: BlobAuditingPolicyState

属性值

storageAccountAccessKey

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

  1. 在 Azure Active Directory (AAD) 中为 SQL Server 分配系统指定的管理身份。
  2. 通过在服务器身份中添加“Storage Blob Data Contributor”(存储 Blob 数据贡献者)角色,赋予 SQL Server 身份访问存储账户的权限。 有关详细信息,请参阅 使用托管标识身份验证对存储的审核
storageAccountAccessKey?: string

属性值

string

storageAccountSubscriptionId

指定 Blob 存储订阅 ID。

storageAccountSubscriptionId?: string

属性值

string

storageEndpoint

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

storageEndpoint?: string

属性值

string