你当前正在访问 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、ServerName 和 DatabaseName 参数来标识数据库。 指定 存储AccountName 参数以指定审核日志的存储帐户和用于定义存储密钥的 存储KeyType 参数。 还可以通过设置 RetentionInDays 和 TableIdentifier 参数的值来定义审核日志表名称的句点和种子来定义审核日志表的保留期。 指定要 审核的事件类型的 EventType 参数。 成功运行 cmdlet 后,将启用数据库的审核。 对于表审核,如果数据库在其服务器策略用于审核之前运行此 cmdlet,则审核将停止使用该策略。 对于 Blob 审核,如果数据库在运行此 cmdlet 之前使用其服务器的策略进行审核,则两个审核策略将并排存在。 如果 cmdlet 成功并使用 PassThru 参数,则除了数据库标识符外,还会返回描述当前审核策略的对象。 数据库标识符包括但不限于 ResourceGroupName、ServerName 和 DatabaseName。 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 |
输入
String[]
Nullable<T>[[System.UInt32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]