次の方法で共有


Microsoft Graph データ接続のユーザー選択およびフィルター処理機能

Microsoft Graph データ接続を使用して、データを抽出するユーザーを選択し、返されるデータを制限するフィルターを追加できます。 この記事では、データ接続が提供するユーザーの選択範囲オプションと、データ接続がサポートするフィルター処理について説明します。

ユーザーの選択範囲

複数のユーザーにパイプラインを実行できます。 ユーザーの選択範囲オプションは次のとおりです。

  • 組織内のすべてのユーザー
  • 組織内の最大 10 グループのユーザー
  • Microsoft Entra ユーザー プロパティで構成される述語に基づく一連のユーザー

Azure Synapse または Azure Data Factory のコピー アクティビティの SourceDataSet でユーザーの選択を指定します。 グループのリストで実行するには、typeProperties に新規フィールド allowedGroups を追加し、これをコンマで区切った最大 10 グループのオブジェクト ID のリストに設定します。 既定でグループが指定されていない場合は、組織全体にデータが抽出されます。

テナント全体で実行する述語を指定するには、typeProperties に新規フィールド userScopeFilterUri を追加し、これを述語に設定します。 述語の形式は、Microsoft Graph API のクエリ形式に一致する必要があります。 たとえば、財務部門で働いているユーザーに対して選択範囲を制限する場合は、https://graph.microsoft.com/v1.0/users?$filter=Department eq 'Finance'を使用できます。 選択を 1 人のユーザーに制限する場合は、https://graph.microsoft.com/v1.0/users?$filter=mail eq 'contosouser1@contoso.com' を使用できます。

クエリは、クエリを実行している Microsoft 365 の組織内のユーザーのみを返します。 ゲスト ユーザーとユーザー以外のメールボックスは返されません。

フィルター処理

DateTime プロパティを使用して、クエリの抽出結果を制限できます。 要求されたデータの種類によっては、DateTime フィルターが必要になる可能性があります。 DateTime フィルターは、Azure Synapse または Azure Data Factory コピー アクティビティの SourceDataSet のプロパティを使用して提供されます。 DateTime フィルターを指定するには、typeProperties に新規フィールド dateFilterColumn を追加して、これを次の表のフィルター処理をサポートするプロパティのいずれかに設定します。 次に、startTimeendTime を追加します。これは、プロパティがフィルター処理される DateTime の値を表します。

次のデータセットには、対応する DateTime プロパティのいずれかに指定するフィルターが必要です。

データセット名 フィルター処理をサポートしているプロパティ
BasicDataSet_v0.Event_v0
BasicDataSet_v0.Event_v1
CreatedDateTime
LastModifiedDateTime
BasicDataSet_v0.Message_v0
BasicDataSet_v0.Message_v1
CreatedDateTime
LastModifiedDateTime
ReceivedDateTime
SentDateTime
BasicDataSet_v0.SentItem_v0
BasicDataSet_v0.SentItem_v1
CreatedDateTime
LastModifiedDateTime
ReceivedDateTime
SentDateTime

注:

BasicDataSet_v0.CalendarView_v0 を要求しているパイプラインにも DateTime フィルターが必要ですが、SourceDataSet に dateFilterColumn が指定されていません。 ただし、startTimeendTime が必要で、startTime の後に開始し、endTime が指定される前に終了するイベントのみです。

データ接続についてよく寄せられる質問