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 Purview コンプライアンス ポータルに送信されるフィールドを定義します。 一部のフィールドは、監査データを Microsoft Purview へと送信するすべてのアプリケーションに共通です。また、その他のフィールドは、Customer Engagement アプリに固有のものです。 基本スキーマには、共通フィールドが含まれます。
フィールド名 | 型 | 必須 | 説明 |
---|---|---|---|
日付 | 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 の監査ログ検索をオフにすることができます。 詳細については、Microsoft Purview の監査ソリューション を参照してください。
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 | 00aa00aa-bb11-cc22-dd33-44ee44ee44ee |
EntityName | 取引先企業 |
Query | 該当なし |
QueryResults | 該当なし |
ItemURL | https://orgname.onmicrosoft.com/main.aspx?etn=account&pagetype=entityrecord&id=00aa00aa-bb11-cc22-dd33-44ee44ee44ee |
例 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 | 00aa00aa-bb11-cc22-dd33-44ee44ee44ee、 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 | 潜在顧客 | Update |
さらに考慮すべきこと
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 の概要 を使用して、ユーザー活動の監視ログを検索します