次の方法で共有


DatabaseBlobAuditingPolicy interface

データベース BLOB 監査ポリシー。

Extends

プロパティ

auditActionsAndGroups

監査する Actions-Groups とアクションを指定します。

使用する推奨されるアクション グループのセットは次の組み合わせです。これにより、データベースに対して実行されたすべてのクエリとストアド プロシージャ、および成功したログインと失敗したログインが監査されます。

BATCH_COMPLETED_GROUP、SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP、FAILED_DATABASE_AUTHENTICATION_GROUP。

上記の組み合わせも、Azure portal から監査を有効にするときに既定で構成されるセットです。

監査でサポートされているアクション グループは次のとおりです (注: 監査のニーズに対応する特定のグループのみを選択してください)。不要なグループを使用すると、非常に大量の監査レコードが発生する可能性があります。

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 監査アクション グループの」を参照してください。

データベース監査ポリシーでは、特定のアクションを指定することもできます (サーバー監査ポリシーにはアクションを指定できないことに注意してください)。 監査でサポートされているアクションは、SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES です。

監査対象のアクションを定義するための一般的な形式は、{action} ON {object} BY {principal} です。

上記の形式では、テーブル、ビュー、ストアド プロシージャなどのオブジェクト、またはデータベースまたはスキーマ全体を参照できることに注意してください。 後者の場合は、それぞれ DATABASE::{db_name} と SCHEMA::{schema_name} という形式が使用されます。

例: DBo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by 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 API 」または「診断設定の PowerShell する」を参照してください。

isManagedIdentityInUse

BLOB ストレージへのアクセスにマネージド ID を使用するかどうかを指定します

isStorageSecondaryKeyInUse

storageAccountAccessKey 値がストレージのセカンダリ キーかどうかを指定します。

kind

リソースの種類。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

queueDelayMs

監査アクションが強制的に処理されるまでの時間をミリ秒単位で指定します。 既定値は 1000 (1 秒) です。 最大値は 2,147,483,647 です。

retentionDays

ストレージ アカウントの監査ログに保持する日数を指定します。

state

監査の状態を指定します。 状態が有効の場合、storageEndpoint または isAzureMonitorTargetEnabled が必要です。

storageAccountAccessKey

監査ストレージ アカウントの識別子キーを指定します。 状態が Enabled で storageEndpoint が指定されている場合、storageAccountAccessKey を指定しないと、SQL サーバーのシステム割り当てマネージド ID を使用してストレージにアクセスします。 マネージド ID 認証を使用するための前提条件:

  1. AZURE Active Directory (AAD) で SQL Server にシステム割り当てマネージド ID を割り当てます。
  2. サーバー ID に "ストレージ BLOB データ共同作成者" RBAC ロールを追加して、SQL Server ID にストレージ アカウントへのアクセス権を付与します。 詳細については、「マネージド ID 認証 を使用したストレージへの監査の」を参照してください。
storageAccountSubscriptionId

BLOB ストレージサブスクリプション ID を指定します。

storageEndpoint

BLOB ストレージ エンドポイント (例: https://MyAccount.blob.core.windows.net) を指定します。 状態が有効の場合、storageEndpoint または isAzureMonitorTargetEnabled が必要です。

継承されたプロパティ

id

リソース ID。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

name

リソース名。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

type

リソースの種類。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

プロパティの詳細

auditActionsAndGroups

監査する Actions-Groups とアクションを指定します。

使用する推奨されるアクション グループのセットは次の組み合わせです。これにより、データベースに対して実行されたすべてのクエリとストアド プロシージャ、および成功したログインと失敗したログインが監査されます。

BATCH_COMPLETED_GROUP、SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP、FAILED_DATABASE_AUTHENTICATION_GROUP。

上記の組み合わせも、Azure portal から監査を有効にするときに既定で構成されるセットです。

監査でサポートされているアクション グループは次のとおりです (注: 監査のニーズに対応する特定のグループのみを選択してください)。不要なグループを使用すると、非常に大量の監査レコードが発生する可能性があります。

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 監査アクション グループの」を参照してください。

データベース監査ポリシーでは、特定のアクションを指定することもできます (サーバー監査ポリシーにはアクションを指定できないことに注意してください)。 監査でサポートされているアクションは、SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES です。

監査対象のアクションを定義するための一般的な形式は、{action} ON {object} BY {principal} です。

上記の形式では、テーブル、ビュー、ストアド プロシージャなどのオブジェクト、またはデータベースまたはスキーマ全体を参照できることに注意してください。 後者の場合は、それぞれ DATABASE::{db_name} と SCHEMA::{schema_name} という形式が使用されます。

例: DBo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by 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 API 」または「診断設定の PowerShell する」を参照してください。

isAzureMonitorTargetEnabled?: boolean

プロパティ値

boolean

isManagedIdentityInUse

BLOB ストレージへのアクセスにマネージド ID を使用するかどうかを指定します

isManagedIdentityInUse?: boolean

プロパティ値

boolean

isStorageSecondaryKeyInUse

storageAccountAccessKey 値がストレージのセカンダリ キーかどうかを指定します。

isStorageSecondaryKeyInUse?: boolean

プロパティ値

boolean

kind

リソースの種類。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

kind?: 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 サーバーのシステム割り当てマネージド ID を使用してストレージにアクセスします。 マネージド ID 認証を使用するための前提条件:

  1. AZURE Active Directory (AAD) で SQL Server にシステム割り当てマネージド ID を割り当てます。
  2. サーバー ID に "ストレージ BLOB データ共同作成者" RBAC ロールを追加して、SQL Server ID にストレージ アカウントへのアクセス権を付与します。 詳細については、「マネージド ID 認証 を使用したストレージへの監査の」を参照してください。
storageAccountAccessKey?: string

プロパティ値

string

storageAccountSubscriptionId

BLOB ストレージサブスクリプション ID を指定します。

storageAccountSubscriptionId?: string

プロパティ値

string

storageEndpoint

BLOB ストレージ エンドポイント (例: https://MyAccount.blob.core.windows.net) を指定します。 状態が有効の場合、storageEndpoint または isAzureMonitorTargetEnabled が必要です。

storageEndpoint?: string

プロパティ値

string

継承されたプロパティの詳細

id

リソース ID。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

id?: string

プロパティ値

string

ProxyResource.id から継承

name

リソース名。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

name?: string

プロパティ値

string

ProxyResource.name から継承された

type

リソースの種類。 注: このプロパティはシリアル化されません。 サーバーによってのみ設定できます。

type?: string

プロパティ値

string

proxyResource.type から継承