Microsoft Graph データ接続を使用して、データを抽出するユーザーを選択し、返されるデータを制限するフィルターを追加できます。 この記事では、データ接続が提供するユーザーの選択範囲オプションと、データ接続がサポートするフィルター処理について説明します。
ユーザーの選択範囲
複数のユーザーにパイプラインを実行できます。 ユーザーの選択範囲オプションは次のとおりです。
- 組織内のすべてのユーザー
- 組織内の最大 10 グループのユーザー
- Microsoft Entra ユーザー プロパティで構成される述語に基づく一連のユーザー
Azure Synapseまたはコピー アクティビティの SourceDataSet でユーザーの選択Azure Data Factory指定します。 グループのリストで実行するには、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またはコピー アクティビティの SourceDataSet のプロパティAzure Data Factory使用して提供されます。 DateTime フィルターを指定するには、typeProperties に新規フィールド dateFilterColumn を追加して、これを次の表のフィルター処理をサポートするプロパティのいずれかに設定します。 次に、startTime と endTime を追加します。これは、プロパティがフィルター処理される 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 が指定されていません。 ただし、startTime と endTime が必要で、startTime の後に開始し、endTime が指定される前に終了するイベントのみです。