你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Set-AzureRmSqlDatabaseAuditing
更改 Azure SQL 数据库的审核设置。
警告
AzureRM PowerShell 模块已自 2024 年 2 月 29 日起正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。
尽管 AzureRM 模块仍可运行,但不再受到维护或支持,任何继续使用的行为都由用户自行决定并自行承担风险。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源。
语法
Set-AzureRmSqlDatabaseAuditing
-State <String>
[-PassThru]
[-AuditActionGroup <AuditActionGroups[]>]
[-AuditAction <String[]>]
[-StorageAccountName <String>]
[-StorageKeyType <String>]
[-RetentionInDays <UInt32>]
[-PredicateExpression <String>]
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzureRmSqlDatabaseAuditing
-State <String>
[-PassThru]
[-AuditActionGroup <AuditActionGroups[]>]
[-AuditAction <String[]>]
-StorageAccountName <String>
[-StorageAccountSubscriptionId <Guid>]
[-StorageKeyType <String>]
[-RetentionInDays <UInt32>]
[-PredicateExpression <String>]
[-ServerName] <String>
[-DatabaseName] <String>
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
Set-AzureRmSqlDatabaseAuditing cmdlet 更改 Azure SQL 数据库的审核设置。 若要使用 cmdlet,请使用 ResourceGroupName、ServerName 和 DatabaseName 参数来标识数据库。 指定 StorageAccountName 参数以指定审核日志的存储帐户和 用于定义存储密钥的 StorageKeyType 参数。 使用 State 参数启用/禁用策略。 还可以通过设置 RetentionInDays 参数的值来定义审核日志的保留期。 成功运行 cmdlet 后,将启用数据库的审核。 如果 cmdlet 成功并使用 PassThru 参数,则除了数据库标识符外,还会返回描述当前 Blob 审核策略的对象。 数据库标识符包括但不限于 ResourceGroupName、ServerName 和 DatabaseName。
示例
示例 1:启用 Azure SQL 数据库的审核策略
PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -DatabaseName "Database01"
示例 2:禁用 Azure SQL 数据库的 Blob 审核策略
PS C:\>Set-AzureRmSqlDatabaseAuditing -State Disabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
示例 3:使用不同订阅中的存储帐户启用 Azure SQL 数据库的审核策略
PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -StorageAccountSubscriptionId "7fe3301d-31d3-4668-af5e-211a890ba6e3"
示例 4:启用 Azure SQL 数据库的扩展审核策略
PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -DatabaseName "Database01" -PredicateExpression "statement <> 'select 1'"
示例 5:删除 Azure SQL 数据库的扩展审核策略,并设置审核策略而不是它。
PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -DatabaseName "Database01" -PredicateExpression ""
参数
-AuditAction
审核操作集。 要审核的受支持操作包括:SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES 定义要审核的操作的一般形式是:[action] ON [object] BY [principal] 请注意,采用上述格式的 [object] 可以引用表、视图或存储过程或整个数据库或架构等对象。 对于后一种情况,分别使用 FORMS DATABASE::[dbname] 和 SCHEMA::[schemaname]。 例如:SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public For information, see https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions.
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-AuditActionGroup
建议使用的操作组集是以下组合 - 这将审核针对数据库执行的所有查询和存储过程,以及成功和失败的登录:“BATCH_COMPLETED_GROUP”、“SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP”、“FAILED_DATABASE_AUTHENTICATION_GROUP”上述组合也是默认配置的集。 这些组涵盖针对数据库执行的所有 SQL 语句和存储过程,不应与其他组结合使用,因为这将导致重复的审核日志。 有关详细信息,请参阅 https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups。
类型: | 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 |
接受管道输入: | True |
接受通配符: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DatabaseName
SQL 数据库名称。
类型: | String |
Position: | 2 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-DefaultProfile
用于与 Azure 通信的凭据、帐户、租户和订阅。
类型: | IAzureContextContainer |
别名: | AzureRmContext, AzureCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PassThru
{{Fill PassThru Description}}
类型: | SwitchParameter |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PredicateExpression
用于筛选审核日志的 Where 子句的语句。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ResourceGroupName
资源组的名称。
类型: | String |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-RetentionInDays
审核日志的保留天数。
类型: | Nullable<T>[UInt32] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ServerName
SQL 数据库服务器名称。
类型: | String |
Position: | 1 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-State
策略的状态。
类型: | String |
接受的值: | Enabled, Disabled |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-StorageAccountName
存储帐户的名称。 不允许使用通配符。 此参数不是必需的。 如果未指定此参数,cmdlet 将使用以前定义为审核策略的一部分的存储帐户。 如果这是首次定义审核策略,并且未指定此参数,则 cmdlet 将失败。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-StorageAccountSubscriptionId
指定存储帐户订阅 ID
类型: | Guid |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-StorageKeyType
指定要使用的存储访问密钥之一。
类型: | String |
接受的值: | Primary, Secondary |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |