Microsoft Dataverse およびモデル駆動型アプリの活動ログ
データの保護、プライバシーの保護、プライバシー規制 の遵守は、ビジネスにとって最優先事項のひとつです。 可能なセキュリティ違反について分析できるように、行われるデータ処理アクションの全体を監査することが重要です。 アクティビティ ログからのこの情報は、Office、Power Apps、Power Automate、Customer Engagement アプリ (Dynamics 365 Sales、Dynamics 365 Customer Service、Dynamics 365 Field Service、Dynamics 365 Marketing、および Dynamics 365 Project Service Automation) の使用に対処するデータ保護影響の評価 (DPIA) を実行するときに使用できます。
この トピック では、 Power Apps、 Power Automate、および顧客エンゲージメント アプリを設定して、幅広いデータ処理アクティビティを監査し、 Microsoft Purviewコンプライアンス ポータル を使用してアクティビティ レポートのデータを確認する方法について説明します。
要件
- 少なくとも1人のユーザーに Microsoft/Office 365 E1 以上のライセンスが割り当てられています。
- 運用環境で使用できますが、サンドボックス環境では使用できません。
監査されるイベント
ログは SDK レイヤーで行われます。つまり、1 つのアクションで、ログに記録される複数のイベントをトリガできることを意味します。 次は、監査できるユーザー イベントのサンプルです。 管理イベントは現在ログに記録されていません。
ユーザーイベントおよびサポート関連イベント
イベント | 内容 |
---|---|
作成、読み込み、更新、削除 (CRUD) | 問題の影響の理解、およびデータ保護影響の評価 (DPIA) への準拠のために重要なすべての CRUD 活動のログ。 |
複数のレコード表示 | Dynamics のユーザーは、グリッド ビュー、高度な検索など、大量に情報を表示します。重大な顧客コンテンツ情報は、これらのビューの一部です。 |
Excel にエクスポート | Excel にデータをエクスポートすることは、安全な環境の外側にデータを移動し、脅威に対して脆弱です。 |
サラウンドまたはカスタム アプリによる SDK 呼び出し | SDK に呼び出してアクションを実行するコア プラットフォームまたはサラウンド アプリを介して実行されたアクションは、ログに記録される必要があります。 |
すべてのサポート CRUD 活動 | Microsoft 顧客 環境 に関するサポート エンジニアの活動。 |
バックエンド コマンド | Microsoft 顧客テナントおよび 環境 でのエンジニアの活動をサポートします。 |
表示されたレポート | レポートが表示される場合にログ記録。 重要な顧客情報の内容はレポートに表示されることがあります。 |
レポート ビューアのエクスポート | 異なる形式にレポートをエクスポートすることは、安全な環境の外側にデータを移動し、脅威に対して脆弱です。 |
レポート ビューア レンダー イメージ | レポートが表示されるときに示されるマルチメディア資産のログ記録。 それらには、重要な顧客情報を含むことがあります。 |
基本スキーマ
スキーマは、 Microsoft Purviewコンプライアンス ポータルに送信されるフィールドを定義します。 一部のフィールドは、監査データを Microsoft Purviewに送信するすべてのアプリケーションに共通ですが、その他のフィールドは顧客エンゲージメント アプリに固有です。 基本スキーマには、共通フィールドが含まれます。
フィールド名 | 型 | 必須 | 説明 |
---|---|---|---|
日付 | Edm.Date | いいえ | ログが生成された日時 (UTC) |
IP アドレス | Edm.String | いいえ | ユーザーまたは社内のゲートウェイの IP アドレス |
ID | Edm.Guid | いいえ | ログに記録されるすべての行に対する一意の GUID |
結果の状態 | Edm.String | いいえ | ログに記録される行の状態。 ほとんどの場合に成功 |
組織 ID | Edm.Guid | はい | ログが生成された組織の一意識別子。 この ID は、Dynamics 開発者リソースの下にあります。 |
ClientIP | Edm.String | いいえ | ユーザーまたは社内のゲートウェイの IP アドレス |
CorrelationId | Edm.Guid | いいえ | 関連する行の関連付けに使用される一意の値 (例: 大きい行が分割される場合) |
CreationTime | Edm.Date | いいえ | ログが生成された日時 (UTC) |
操作 | Edm.Date | いいえ | SDK で呼び出されるメッセージの名前 |
UserKey | Edm.String | いいえ | Microsoft Entra ID におけるユーザーの一意識別子 AKA ユーザー PUID |
UserType | Self.UserType | いいえ | Microsoft 365 監査タイプ(Regular、System) |
User | Edm.String | いいえ | ユーザーの主メール |
Customer Engagement アプリ スキーマ
Customer Engagement アプリ スキーマは、 アプリおよびパートナー チームに固有のフィールドを含みます。
フィールド名 | 型 | 必須 | 説明 |
---|---|---|---|
ユーザー ID | Edm.String | いいえ | 組織内のユーザー GUID の一意の識別子 |
Crm 組織独自の名前 | Edm.String | いいえ | 組織の一意の名前 |
インスタンス Url | Edm.String | いいえ | インスタンスへの URL |
アイテム Url | Edm.String | いいえ | ログを生成するレコードへの URL |
項目の種類 | Edm.String | いいえ | エンティティの名前です。 |
メッセージ | Edm.String | いいえ | SDK で呼び出されるメッセージの名前 |
ユーザー エージェント | Edm.String | いいえ | 組織内のユーザー GUID の一意の識別子 |
EntityId | Edm.Guid | いいえ | エンティティを表す一意識別子 |
EntityName | Edm.String | いいえ | 組織のエンティティ名 |
フィールド | Edm.String | いいえ | 作成または更新された値を反映するキー値ペアの JSON |
ID | Edm.String | いいえ | Customer Engagement アプリにおけるエンティティ名 |
Query | Edm.String | いいえ | 実行中に使用されるフィルタクエリパラメータ FetchXML |
QueryResults | Edm.String | いいえ | SDK メッセージ呼び出しの取得および複数取得によって返された 1 つ以上の一意のレコード |
ServiceContextId | Edm.Guid | いいえ | サービス コンテキストに関連付けられた一意の ID |
ServiceContextIdType | Edm.String | いいえ | コンテキストの使用を定義するアプリケーションで定義されたトークン |
ServiceName | Edm.String | いいえ | ログを生成するサービスの名前 |
SystemUserId | Edm.Guid | いいえ | 組織内のユーザー GUID の一意の識別子 |
UserAgent | Edm.Guid | いいえ | 要求の実行に使用するブラウザー |
ユーザー ID | Edm.Guid | いいえ | この活動に関連付けられている Dynamics システム ユーザーの一意の id |
UserUpn | Edm.String | いいえ | この活動に関連付けられているユーザーのユーザー プリンシパル名 |
監査の有効化
設定>管理>システム設定>監査タブを選択します。
- または、Power Apps ホーム ページ から、設定 (歯車アイコン)>高度な設定>設定>監査>グローバル監査設定 の順に選択します。
監査設定で、次のチェック ボックスを有効にします。
- 監査を開始する
- ユーザー アクセスを監査する (注: ユーザーのサインインのみをキャプチャします)
- 読み取り監査の開始 (注: ほとんどのユーザー アクティビティ/イベントをキャプチャします)
次の領域で監査を有効にする で、監査する領域のチェックボックスを有効にして、OK を選択します。
テーブルおよびフィールド レベルの監査を設定するには、設定>カスタマイズ>システムのカスタマイズ を選択します。
- または、システム設定ページ (上記) から、エンティティとフィールドの監査設定 を選択します。
- または、Power Apps ホーム ページ から、設定 (歯車アイコン)>高度な設定>設定>カスタマイズ>システムのカスタマイズ の順に選択します。
コンポーネントで、エンティティを展開し、取引先企業など、監査するエンティティを選択します。
下方向へスクロールし、データ サービスで監査を有効にします。
監査で、次のチェック ボックスを有効にします。
- 単一レコード監査。 開いたときにレコードをログに記録します。
- 複数レコードの監査。 開いているページに表示されているすべてのレコードをログに記録します。
保存 を選択します。
カスタマイズを公開するには、公開を選択します。
監査する他のエンティティに対して手順 5 ~ 9 を繰り返します。
Microsoft Purviewで監査ログをオンにします。 監査ログの検索をオンまたはオフにするを参照してください。
Microsoft Purviewコンプライアンスポータルのレポートを使用して監査データを確認します
監査ログ検索 が Microsoft Purviewコンプライアンス ポータルでオンになっている場合、組織のユーザーと管理者のアクティビティが監査ログに記録され、90日間保持されます。 ただし、組織によっては、監査ログデータを記録して保持したくない場合があります。 または、監査データにアクセスするために、サード パーティのセキュリティ情報およびイベント管理 (SIEM) アプリケーションを使用している場合があります。 このような場合、グローバル管理者は Microsoft Purviewで監査ログ検索をオフにすることができます。 詳細については、「 Purviewの監査ソリューション Microsoft 」を参照してください。
Microsoft Purviewコンプライアンス ポータルでレコードを検索するには、 レコードの種類 を CRMとして選択し、 アクティビティ を すべてのDynamics 365アクティビティとして選択します。
レポートの作成
独自のレポートを作成して監査データを確認できます。 Purview コンプライアンス ポータルで監査ログを検索する を参照してください。
ログに記録されるもの
アクティビティ ログで記録される内容の一覧については、 Microsoft.Crm.Sdk.Messages名前空間 を参照してください。
以下を除くすべての SDK メッセージをログに出力します。
- WhoAmI
- RetrieveFilteredForms
- TriggerServiceEndpointCheck
- QueryExpressionToFetchXml
- FetchXmlToQueryExpression
- FireNotificationEvent
- RetrieveMetadataChanges
- RetrieveEntityChanges
- RetrieveProvisionedLanguagePackVersion
- RetrieveInstalledLanguagePackVersion
- RetrieveProvisionedLanguages
- RetrieveAvailableLanguages
- RetrieveDeprovisionedLanguages
- RetrieveInstalledLanguagePacks
- GetAllTimeZonesWithDisplayName
- GetTimeZoneCodeByLocalizedName
- IsReportingDataConnectorInstalled
- LocalTimeFromUtcTime
- IsBackOfficeInstalled
- FormatAddress
- IsSupportUserRole
- IsComponentCustomizable
- ConfigureReportingDataConnector
- CheckClientCompatibility
- RetrieveAttribute
読み込みと複数読み込みを分類する方法
接頭辞を使用して分類します。
要求が次で開始する場合: | 次のように特徴付けます: |
---|---|
RetrieveMultiple | ReadMultiple |
ExportToExcel | ReadMultiple |
RollUp | ReadMultiple |
RetrieveEntitiesForAggregateQuery | ReadMultiple |
RetrieveRecordWall | ReadMultiple |
RetrievePersonalWall | ReadMultiple |
ExecuteFetch | ReadMultiple |
取得 | 読み込み |
検索 | 読み込み |
入手 | 読み込み |
エクスポート | 読み込み |
生成されたログの例
以下は、活動のログで作成されたログの例です。
例 1 - ユーザーが取引先企業レコードを読み込むときに生成されるログ
スキーマ名 | 価値 |
---|---|
ID | 50e01c88-2e43-4005-8be8-9ceb172e2e90 |
UserKey | 10033XXXA49AXXXX |
ClientIP | 131.107.XXX.XX |
操作 | 取得 |
Date | 3/2/2018 11:25:56 PM |
EntityId | 0a0d8709-711e-e811-a952-000d3a732d76 |
EntityName | 取引先企業 |
Query | 該当なし |
QueryResults | 該当なし |
ItemURL | https://orgname.onmicrosoft.com/main.aspx?etn=account&pagetype=entityrecord&id=0a0d8709-711e-e811-a952-000d3a732d76 |
例 2 - ユーザーが取引先企業レコードをグリッドに表示するときに生成されるログ ( Microsoft Excel へのエクスポート ログもこれと同様です)
スキーマ名 | 価値 |
---|---|
ID | ef83f463-b92f-455e-97a6-2060a47efe33 |
UserKey | 10033XXXA49AXXXX |
ClientIP | 131.107.XXX.XX |
操作 | RetrieveMultiple |
日付 | 3/2/2018 11:25:56 PM |
EntityId | N/A |
EntityName | 勘定科目 |
クエリ | <フィルター タイプ="and"><条件列="ownerid" オペレーター="eq-userid" /><条件列="statecode" オペレーター="eq" 値="0" /></フィルター> |
QueryResults | 0a0d8709-711e-e811-a952-000d3a732d76, dc136b61-6c1e-e811-a952-000d3a732d76 |
ItemURL | N/A |
例 3 - ユーザーが潜在顧客を営業案件に変換するときにログに記録されるメッセージの一覧
ID | エンティティID | エンティティ名 | 手術 |
---|---|---|---|
53c98033-cca4-4420-97e4-4c1b4f81e062 | 23ad069e-4d22-e811-a953-000d3a732d76 | 取引先担当者 | 作成 |
5aca837c-a1f5-4801-b770-5c66183a58aa | 25ad069e-4d22-e811-a953-000d3a732d76 | 営業案件 | 作成 |
c9585748-fdbf-4ff7-970c-bb37f6aa2c36 | 25ad069e-4d22-e811-a953-000d3a732d76 | 営業案件 | Update |
a0469f30-078b-419d-be61-b04c9a34121f | 1cad069e-4d22-e811-a953-000d3a732d76 | 潜在顧客 | Update |
0975bceb-07c7-4dc2-b621-5a7b245c36a4 | 1cad069e-4d22-e811-a953-000d3a732d76 | 潜在顧客 | 更新する |
さらに考慮すべきこと
Microsoft Purviewコンプライアンス ポータルで監査ログ検索を有効にすると、組織のユーザーとアクティビティが監査ログに記録され、90日間保持されます。 ただし、組織によっては、監査ログデータを記録して保持したくない場合があります。 または、監査データにアクセスするために、サード パーティのセキュリティ情報およびイベント管理 (SIEM) アプリケーションを使用している場合があります。 このような場合、グローバル管理者は Microsoft 365 の監査ログ検索をオフにすることができます。
既知の問題
- Office には、各監査レコードの 3 KB の制限があります。 したがって、場合によっては Customer Engagement アプリの単一レコードは Office で複数のレコードに分割する必要があります。 CorrelationId フィールドを使用して、特定のソース レコードの分割された一連のレコードを取得できます。 分割を要求する可能性がある操作には、RetrieveMultiple および ExportToExcel が含まれます。
- 一部の操作は、すべての関連データを取得するために追加の処理を必要とします。 たとえば、RetrieveMultiple および ExportToExcel は、取得またはエクスポートされるレコードの一覧を抽出するために処理されます。 ただし、今までのところ関連するすべての操作が処理されるわけではありません。 たとえば、ExportToWord は、現在、エクスポートされたものに関する追加の詳細のない単一操作としてログに記録されます。
- 将来のリリースでは、ログのレビューに基づいて役に立たないと決定される操作に対するログが無効にされます。 たとえば、操作の中には、ユーザー活動ではなく、自動システム活動から結果として生じるものがあります。
- 一部のレコード インスタンスでは、EntityName 値が Unknown とマークされる場合があります。 これらのレコードは特定のエンティティ関連の操作に関連しておらず、CRM からは空白で取得されました。 これらはすべて 0000000-0000-0000-0000-000000000000 というエンティティ ID を持ちます。
参照
監査を管理する Dataverse
コンプライアンス センターで監査ログを検索する
Office 365 管理 API の概要 を使用して、ユーザー活動の監視ログを検索します