Set-AzureRmSqlDatabaseAuditingPolicy

データベースの監査ポリシーを設定します。

警告

AzureRM PowerShell モジュールは、2024 年 2 月 29 日の時点で正式に非推奨になりました。 引き続きサポートを受け、更新を受け取れるようにするために、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 コマンドレットは、Azure SQL データベースの監査ポリシーを変更します。 コマンドレットを使用するには、ResourceGroupName、ServerName、および DatabaseName パラメーターを使用してデータベースを識別します。 StorageAccountName パラメーターを指定して監査ログのストレージ アカウントを指定し、StorageKeyType パラメーターを指定してストレージ キーを定義します。 また、RetentionInDays パラメーターと TableIdentifier パラメーターの値を設定して、監査ログ テーブル名の期間とシードを定義することで、監査ログ テーブルのリテンション期間を定義することもできます。 EventType パラメーターを指定して、監査するイベントの種類を定義します。 コマンドレットが正常に実行されると、データベースの監査が有効になります。 テーブル監査の場合、このコマンドレットを実行する前にデータベースがサーバーのポリシーを監査に使用した場合、監査はそのポリシーの使用を停止します。 BLOB 監査の場合、このコマンドレットを実行する前にデータベースがサーバーのポリシーを監査に使用した場合、両方の監査ポリシーがサイド バイ サイドで存在します。 コマンドレットが成功し、PassThru パラメーターを使用すると、データベース識別子に加えて、現在の監査ポリシーを記述するオブジェクトが返されます。 データベース識別子には、ResourceGroupName、ServerName、および DatabaseName が含まれますが、これらに限定されません。 このコマンドレットは、Azure 上の SQL Server Stretch Database サービスでもサポートされています。

例 1: テーブル監査を使用するようにデータベースの監査ポリシーを設定する

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

このコマンドは、Server01 にある Database01 という名前のデータベースの監査ポリシーを、Storage31 という名前のストレージ アカウントを使用するように設定します。

例 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

1 つ以上の監査アクションを指定します。 このパラメーターは、BLOB 監査にのみ適用されます。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-AuditActionGroup

1 つ以上の監査アクション グループを指定します。 このパラメーターは、BLOB 監査にのみ適用されます。

Type:AuditActionGroups[]
Accepted values: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
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-AuditType

Type:AuditType
Accepted values:NotSet, Table, Blob
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

データベースの名前を指定します。

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

Azure との通信に使用される資格情報、アカウント、テナント、サブスクリプション

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EventType

監査するイベントの種類を指定します。 このパラメーターは、テーブル監査にのみ適用されます。 いくつかのイベントの種類を指定できます。 すべてのイベントの種類を監査する場合は [すべて] を、監査対象のイベントを指定する場合は [なし] を指定できます。 All または None を同時に指定した場合、コマンドレットは実行されません。

Type:String[]
Accepted values:PlainSQL_Success, PlainSQL_Failure, ParameterizedSQL_Success, ParameterizedSQL_Failure, StoredProcedure_Success, StoredProcedure_Failure, Login_Success, Login_Failure, TransactionManagement_Success, TransactionManagement_Failure, All, None
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

作業中の項目を表すオブジェクトを返します。 既定では、このコマンドレットによる出力はありません。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

データベースが割り当てられるリソース グループの名前を指定します。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RetentionInDays

監査ログ テーブルの保持日数を指定します。 0 の値は、テーブルが保持されていないことを意味します。 既定値はゼロです。 0 より大きい値を指定する場合は、TableIdentifer パラメーターの値を指定する必要があります。

Type:Nullable<T>[UInt32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ServerName

データベースをホストするサーバーの名前を指定します。

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-StorageAccountName

データベースを監査するためのストレージ アカウントの名前を指定します。 ワイルドカード文字は使用できません。 このパラメーターは必須ではありません。 このパラメーターを指定しない場合、コマンドレットは、データベースの監査ポリシーの一部として以前に定義されたストレージ アカウントを使用します。 データベース監査ポリシーが初めて定義されていて、このパラメーターを指定しない場合、コマンドレットは失敗します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-StorageKeyType

使用するストレージ アクセス キーを指定します。 このパラメーターの有効値は、次のとおりです。

  • プライマリ
  • Secondary 既定値は Primary です。
Type:String
Accepted values:Primary, Secondary
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-TableIdentifier

監査ログ テーブルの名前を指定します。 RetentionInDays パラメーターに 0 より大きい値を指定する場合は、 この値を 指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required: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