次の方法で共有


Server Blob Auditing Policies - Create Or Update

サーバーの BLOB 監査ポリシーを作成または更新します。

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/auditingSettings/default?api-version=2023-08-01

URI パラメーター

名前 / 必須 説明
blobAuditingPolicyName
path True

blobAuditingPolicyName

BLOB 監査ポリシーの名前。

resourceGroupName
path True

string

リソースを含むリソース グループの名前。 この値は、Azure Resource Manager API またはポータルから取得できます。

serverName
path True

string

サーバーの名前。

subscriptionId
path True

string

Azure サブスクリプションを識別するサブスクリプション ID。

api-version
query True

string

要求に使用する API バージョン。

要求本文

名前 必須 説明
properties.state True

BlobAuditingPolicyState

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

properties.auditActionsAndGroups

string[]

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

properties.isAzureMonitorTargetEnabled

boolean

監査イベントを 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 する」を参照してください。

properties.isDevopsAuditEnabled

boolean

devops 監査の状態を指定します。 状態が [有効] の場合、devops ログは Azure Monitor に送信されます。 Azure Monitor にイベントを送信するには、'State' を 'Enabled'、'IsAzureMonitorTargetEnabled' を true、'IsDevopsAuditEnabled' を true に指定します。

REST API を使用して監査を構成する場合は、マスター データベースに "DevOpsOperationsAudit" 診断ログ カテゴリを含む診断設定も作成する必要があります。

診断設定 URI 形式: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

詳細については、「診断設定 REST API 」または「診断設定の PowerShell する」を参照してください。

properties.isManagedIdentityInUse

boolean

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

properties.isStorageSecondaryKeyInUse

boolean

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

properties.queueDelayMs

integer (int32)

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

properties.retentionDays

integer (int32)

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

properties.storageAccountAccessKey

string

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

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

string (uuid)

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

properties.storageEndpoint

string

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

応答

名前 説明
200 OK

ServerBlobAuditingPolicy

監査設定が正常に更新されました。

202 Accepted

監査設定の更新が進行中です。

ヘッダー

Location: string

Other Status Codes

ErrorResponse

エラー応答: ***

  • 400 ManagedInstanceStoppingOrStopped - インスタンスが停止/停止状態にある間に送信された操作の競合

  • 400 ManagedInstanceStarting - インスタンスが開始状態の間に送信された操作の競合

  • 400 InvalidServerBlobAuditingPolicyCreateRequest - サーバー BLOB 監査ポリシーの作成要求が存在しないか、プロパティ オブジェクトがありません。

  • 400 InvalidBlobAuditActionsAndGroups - 監査アクションまたはアクション グループが無効です。

  • 400 DataSecurityInvalidUserSuppliedParameter - 無効なパラメーター値がクライアントによって提供されました。

  • 400 BlobAuditingInvalidPolicyLength - ポリシーの長さが無効で、200 文字以内である必要があります。

  • 400 InvalidBlobAuditActionsAndGroups - 監査アクションまたはアクション グループが無効です。

  • 400 BlobAuditingNetworkSecurityPerimeterNotAllowed - ネットワーク セキュリティ境界がストレージ アカウントへの送信要求をブロックしました

  • 400 BlobAuditingInvalidStorageAccountCredentials - 指定されたストレージ アカウントまたはアクセス キーが無効です。

  • 400 BlobAuditingStorageOutboundFirewallNotAllowed - ストレージ アカウントが許可された FQDN の一覧に含まれていないため、送信ファイアウォール規則によって要求がブロックされます。

  • 400 InsufficientDiskSpaceForAuditing - データベースの監査メタデータを保存するためのディスク領域が不足しています

  • 400 InvalidBlobAuditActions - 無効な監査アクション

  • 404 ServerNotInSubscriptionResourceGroup - 指定されたサーバーが、指定されたリソース グループとサブスクリプションに存在しません。

  • 404 SubscriptionDoesNotHaveServer - 要求されたサーバーが見つかりませんでした

  • 404 OperationIdNotFound - Id を持つ操作が存在しません。

  • 409 ServerBlobAuditingPolicyInProgress - サーバー BLOB の監査の設定は既に進行中です。

  • 409 CannotCancelOperation - 管理操作が取り消すことができない状態です。

  • 409 OperationCancelled - 操作がユーザーによって取り消されました。

  • 409 OperationInterrupted - 同じリソースに対する別の操作によって中断されたため、リソースに対する操作を完了できませんでした。

  • 429 SubscriptionTooManyCreateUpdateRequests - 使用可能なリソースによって処理できる最大要求を超える要求。

  • 429 SubscriptionTooManyRequests - 使用可能なリソースによって処理できる最大要求を超える要求。

  • 500 OperationTimedOut - 操作がタイムアウトし、自動的にロールバックされました。 操作を再試行してください。

  • 503 TooManyRequests - 使用可能なリソースによって処理できる最大要求を超える要求。

Update a server's blob auditing policy with all parameters
Update a server's blob auditing policy with minimal parameters

Update a server's blob auditing policy with all parameters

要求のサンプル

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/auditingSettings/default?api-version=2023-08-01

{
  "properties": {
    "state": "Enabled",
    "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    "storageEndpoint": "https://mystorage.blob.core.windows.net",
    "retentionDays": 6,
    "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
    "isStorageSecondaryKeyInUse": false,
    "queueDelayMs": 4000,
    "auditActionsAndGroups": [
      "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
      "FAILED_DATABASE_AUTHENTICATION_GROUP",
      "BATCH_COMPLETED_GROUP"
    ],
    "isAzureMonitorTargetEnabled": true
  }
}

応答のサンプル

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/auditingSettings/default",
  "name": "default",
  "type": "Microsoft.Sql/servers/auditingSettings",
  "properties": {
    "state": "Enabled",
    "storageEndpoint": "https://mystorage.blob.core.windows.net",
    "retentionDays": 6,
    "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
    "isStorageSecondaryKeyInUse": false,
    "queueDelayMs": 4000,
    "auditActionsAndGroups": [
      "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
      "FAILED_DATABASE_AUTHENTICATION_GROUP",
      "BATCH_COMPLETED_GROUP"
    ],
    "isAzureMonitorTargetEnabled": true
  }
}

Update a server's blob auditing policy with minimal parameters

要求のサンプル

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/auditingSettings/default?api-version=2023-08-01

{
  "properties": {
    "state": "Enabled",
    "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    "storageEndpoint": "https://mystorage.blob.core.windows.net"
  }
}

応答のサンプル

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/auditingSettings/default",
  "name": "default",
  "type": "Microsoft.Sql/servers/auditingSettings",
  "properties": {
    "state": "Enabled",
    "storageEndpoint": "https://mystorage.blob.core.windows.net",
    "retentionDays": 6,
    "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
    "isStorageSecondaryKeyInUse": false,
    "auditActionsAndGroups": [
      "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
      "FAILED_DATABASE_AUTHENTICATION_GROUP",
      "BATCH_COMPLETED_GROUP"
    ]
  }
}

定義

名前 説明
blobAuditingPolicyName

BLOB 監査ポリシーの名前。

BlobAuditingPolicyState

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

ErrorAdditionalInfo

リソース管理エラーの追加情報。

ErrorDetail

エラーの詳細。

ErrorResponse

エラー応答

ServerBlobAuditingPolicy

サーバー BLOB 監査ポリシー。

blobAuditingPolicyName

BLOB 監査ポリシーの名前。

説明
default

BlobAuditingPolicyState

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

説明
Disabled
Enabled

ErrorAdditionalInfo

リソース管理エラーの追加情報。

名前 説明
info

object

追加情報。

type

string

追加情報の種類。

ErrorDetail

エラーの詳細。

名前 説明
additionalInfo

ErrorAdditionalInfo[]

エラーの追加情報。

code

string

エラー コード。

details

ErrorDetail[]

エラーの詳細。

message

string

エラー メッセージ。

target

string

エラーターゲット。

ErrorResponse

エラー応答

名前 説明
error

ErrorDetail

エラー オブジェクト。

ServerBlobAuditingPolicy

サーバー BLOB 監査ポリシー。

名前 説明
id

string

リソース ID。

name

string

リソース名。

properties.auditActionsAndGroups

string[]

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

properties.isAzureMonitorTargetEnabled

boolean

監査イベントを 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 する」を参照してください。

properties.isDevopsAuditEnabled

boolean

devops 監査の状態を指定します。 状態が [有効] の場合、devops ログは Azure Monitor に送信されます。 Azure Monitor にイベントを送信するには、'State' を 'Enabled'、'IsAzureMonitorTargetEnabled' を true、'IsDevopsAuditEnabled' を true に指定します。

REST API を使用して監査を構成する場合は、マスター データベースに "DevOpsOperationsAudit" 診断ログ カテゴリを含む診断設定も作成する必要があります。

診断設定 URI 形式: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

詳細については、「診断設定 REST API 」または「診断設定の PowerShell する」を参照してください。

properties.isManagedIdentityInUse

boolean

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

properties.isStorageSecondaryKeyInUse

boolean

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

properties.queueDelayMs

integer (int32)

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

properties.retentionDays

integer (int32)

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

properties.state

BlobAuditingPolicyState

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

properties.storageAccountAccessKey

string

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

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

string (uuid)

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

properties.storageEndpoint

string

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

type

string

リソースの種類。