監査データを削除
顧客の履歴削除要求に応じたり、ログ容量スペースを解放したりするために、監査データの削除が必要になる場合があります。 監査 (Audit) テーブル のレコードを直接削除することはできません。 代わりに、Dataverse では、監査履歴データを削除するために次のメッセージを提供します。
メッセージ | 説明 |
---|---|
DeleteRecordChangeHistory |
特定のレコードに向けすべての監査変更履歴レコードを削除します。 |
BulkDelete |
クエリで識別されたレコードを非同期的に削除します。 このメッセージは、他のアクティビティをブロックすることなく、多数の監査レコードを削除するために使用できます。 |
DeleteAuditData |
顧客管理の暗号化キーを使用している顧客の場合、指定された終了日までの全ての監査データ レコードを削除します。 |
注意
この記事では、デバイスやサービスから個人データを削除する手順を説明します。これは GDPR にともなう義務を果たす際に役立ちます。 GDPR に関する一般的な情報は、Microsoft セキュリティ センターの GDPR セクション と Service Trust Portal の GDPR セクション を参照してください。
レコードの変更履歴を削除する
DeleteRecordChangeHistoryRequest
メッセージを使用して、ある期間内のすべての監査レコードではなく、指定したレコードのすべての監査変更履歴レコードを削除します。
レコードの監査変更履歴を削除するには、システム管理者のセキュリティ ロールまたは prvDeleteRecordChangeHistory
特権を含むセキュリティ ロールを 保持しているかを確認します。
DeleteRecordChangeHistoryRequest メッセージ
Target
パラメータを使用してレコードを指定します。 応答の DeletedEntriesCount
プロパティでは、削除された監査レコードの数を示します。
次の例では、DeleteRecordChangeHistory アクション を使用して、アカウント レコードの監査済みデータ変更を削除します。
要求:
POST [Organization URI]/api/data/v9.2/DeleteRecordChangeHistory HTTP/1.1
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
{
"Target": {
"@odata.type": "Microsoft.Dynamics.CRM.account",
"accountid": "611e7713-68d7-4622-b552-85060af450bc"
}
}
応答:
HTTP/1.1 200 OK
OData-Version: 4.0
{
"@odata.context": "[Organization URI]/api/data/v9.2/$metadata#Microsoft.Dynamics.CRM.DeleteRecordChangeHistoryResponse",
"DeletedEntriesCount": 4
}
詳細情報
BulkDelete を使用して、監査データを削除します
BulkDelete
メッセージを使用して、組織が内部および外部の監査要件に準拠するため保持する必要がなくなった監査レコードを削除します。 一括削除操作はバックグラウンドで実行され、繰り返しパターン、開始時間、その他のパラメーターを定義できます。
BulkDelete メッセージ
次の例では、アクション値が 64 (Web 経由の User Access) の監査レコードを削除します。
要求:
POST [Organization URI]/api/data/v9.1/BulkDelete
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
{
"QuerySet": [
{
"EntityName": "audit",
"Criteria": {
"FilterOperator": "And",
"Conditions": [
{
"AttributeName": "action",
"Operator": "Equal",
"Values": [
{
"Type": "System.String",
"Value": "64"
}
]
}
],
"Filters": []
}
}
],
"JobName": "Bulk Delete of audit records with action = 64",
"SendEmailNotification": false,
"ToRecipients": [],
"CCRecipients": [],
"RecurrencePattern": "",
"StartDateTime": "2022-02-02T10:00:00.000Z"
}
応答:
HTTP/1.1 200 OK
Content-Type: application/json; odata.metadata=minimal
OData-Version: 4.0
{
"@odata.context": "[Organization URI]/api/data/v9.0/$metadata#Microsoft.Dynamics.CRM.BulkDeleteResponse",
"JobId": "[Job Id]"
}
詳細情報
日付範囲の変更履歴の削除
顧客管理の暗号化キーを使用している場合は、DeleteAuditData
メッセージを使用して、ある期間の監査レコードを削除できます。 監査データ レコードは古いものから新しいものへと順に削除されます。
注意
たとえ顧客管理暗号化キーを使用している場合でも、DeleteAuditData
メッセージではなく 一括削除 の使用を考慮します。
DeleteAuditData
メッセージでは、終了日が EndDate
プロパティで指定された日付以前のパーティションのすべての監査データを削除します。 空のパーティションがあれば、それも削除します。 現在の (アクティブな) パーティションと、その中の監査レコードを、この要求やその他の要求で削除することはできません。
Dataverse は、四半期ごとにパーティションを自動的に作成します。 この動作は変更したり停止することはできません。 パーティションの一覧を取得するには、 RetrieveAuditPartitionList
メッセージを使います。 パーティションの終了日が現在の日付よりも後の場合、そのパーティションやパーティション内の監査レコードを削除することはできません。
参照
監査の概要
監査の構成
監査済みデータの変更履歴を取得する
管理者ガイド: 監査ログの削除によるデータベース領域の回復
注意
ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)
この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。