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

Set-AzureRmSqlDatabaseAuditingPolicy

设置数据库的审核策略。

警告

截至 2024 年 2 月 29 日,AzureRM PowerShell 模块已正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。

尽管 AzureRM 模块仍可能正常运行,但它不再维护或受支持,但会根据用户的自由裁量权和风险继续使用任何继续使用模块。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源

语法

Set-AzureRmSqlDatabaseAuditingPolicy
   [-AuditType <AuditType>]
   [-PassThru]
   [-AuditActionGroup <AuditActionGroups[]>]
   [-AuditAction <String[]>]
   [-EventType <String[]>]
   [-StorageAccountName <String>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-TableIdentifier <String>]
   [-ServerName] <String>
   [-DatabaseName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

Set-AzureRmSqlDatabaseAuditingPolicy cmdlet 更改 Azure SQL 数据库的审核策略。 若要使用 cmdlet,请使用 ResourceGroupName、ServerNameDatabaseName 参数来标识数据库。 指定 存储AccountName 参数以指定审核日志的存储帐户和用于定义存储密钥的 存储KeyType 参数。 还可以通过设置 RetentionInDays 和 TableIdentifier 参数的值来定义审核日志表名称的句点和种子来定义审核日志表的保留期。 指定要 审核的事件类型的 EventType 参数。 成功运行 cmdlet 后,将启用数据库的审核。 对于表审核,如果数据库在其服务器策略用于审核之前运行此 cmdlet,则审核将停止使用该策略。 对于 Blob 审核,如果数据库在运行此 cmdlet 之前使用其服务器的策略进行审核,则两个审核策略将并排存在。 如果 cmdlet 成功并使用 PassThru 参数,则除了数据库标识符外,还会返回描述当前审核策略的对象。 数据库标识符包括但不限于 ResourceGroupName、ServerNameDatabaseName Azure 上的 SQL Server Stretch Database 服务也支持此 cmdlet。

示例

示例 1:设置数据库的审核策略以使用表审核

PS C:\>Set-AzureRmSqlDatabaseAuditingPolicy -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -AuditType Table -StorageAccountName "Storage31"

此命令将 Server01 上名为 Database01 的数据库的审核策略设置为使用名为 存储31 的存储帐户。

示例 2:设置数据库现有审核策略的存储帐户密钥

PS C:\>Set-AzureRmSqlDatabaseAuditingPolicy -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -StorageAccountKey Secondary

此命令设置位于 Server01 上的名为 Database01 的数据库的审核策略,以继续使用同一存储帐户名称,但现在使用辅助密钥。

示例 3:将数据库的审核策略设置为使用特定事件类型

PS C:\>Set-AzureRmSqlDatabaseAuditingPolicy -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -EventType Login_Failure

示例 4:设置数据库的审核策略以使用 Blob 审核

PS C:\>Set-AzureRmSqlDatabaseAuditingPolicy -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -AuditType Blob -StorageAccountName "Storage31" -AuditActionGroup "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", "FAILED_DATABASE_AUTHENTICATION_GROUP" -AuditAction "UPDATE ON database::[Database01] BY [public]"  -RetentionInDays 8

此命令设置位于 Server01 上的名为 Database01 的数据库的审核策略。 策略记录Login_Failure事件类型。 此命令不会更改存储设置。

参数

-AuditAction

指定一个或多个审核操作。 此参数仅适用于 Blob 审核。

类型:String[]
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-AuditActionGroup

指定一个或多个审核操作组。 此参数仅适用于 Blob 审核。

类型:AuditActionGroups[]
接受的值:BATCH_STARTED_GROUP, BATCH_COMPLETED_GROUP, 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, AUDIT_CHANGE_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
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-AuditType

类型:AuditType
接受的值:NotSet, Table, Blob
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
Aliases:cf
Position:Named
默认值:False
必需:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

指定数据库的名称。

类型:String
Position:2
默认值:None
必需:True
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

用于与 azure 通信的凭据、帐户、租户和订阅

类型:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
Accept pipeline input:False
Accept wildcard characters:False

-EventType

指定要审核的事件类型。 此参数仅适用于表审核。 可以指定多个事件类型。 可以指定 All 来审核所有事件类型或 None 以指定不会审核任何事件。 如果同时指定“全部”或“无”,则 cmdlet 不会运行。

类型:String[]
接受的值:PlainSQL_Success, PlainSQL_Failure, ParameterizedSQL_Success, ParameterizedSQL_Failure, StoredProcedure_Success, StoredProcedure_Failure, Login_Success, Login_Failure, TransactionManagement_Success, TransactionManagement_Failure, All, None
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

返回一个代表你所处理的项目的对象。 默认情况下,此 cmdlet 将不产生任何输出。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

指定为其分配数据库的资源组的名称。

类型:String
Position:0
默认值:None
必需:True
Accept pipeline input:True
Accept wildcard characters:False

-RetentionInDays

指定审核日志表的保留天数。 值为零(0)表示表未保留。 默认值为零。 如果指定大于零的值,则必须指定 TableIdentifer 参数的值。

类型:Nullable<T>[UInt32]
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-ServerName

指定承载数据库的服务器的名称。

类型:String
Position:1
默认值:None
必需:True
Accept pipeline input:True
Accept wildcard characters:False

-StorageAccountName

指定用于审核数据库的存储帐户的名称。 不允许使用通配符。 此参数不是必需的。 如果未指定此参数,cmdlet 将使用之前定义的存储帐户作为数据库的审核策略的一部分。 如果这是首次定义数据库审核策略且未指定此参数,则 cmdlet 将失败。

类型:String
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-StorageKeyType

指定要使用的存储访问密钥之一。 此参数的可接受值为:

  • 主要
  • 辅助默认值为 Primary。
类型:String
接受的值:Primary, Secondary
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-TableIdentifier

指定审核日志表的名称。 如果为 RetentionInDays 参数指定大于零的值,请指定此值。

类型:String
Position:Named
默认值:None
必需:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
Aliases:wi
Position:Named
默认值:False
必需:False
Accept pipeline input:False
Accept wildcard characters:False

输入

AuditType

AuditActionGroups[]

String[]

String

Nullable<T>[[System.UInt32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

输出

AuditingPolicyModel