Microsoft Entra イベント
この記事では、Microsoft Graph API から発行される Microsoft Entra イベントのプロパティとスキーマについて説明します。 イベント スキーマの概要については、CloudEvents スキーマに関する記事を参照してください。
使用可能なイベントの種類
これらのイベントがトリガーされるのは、Microsoft Entra ID でユーザーまたはグループが作成、更新、または削除されたとき、または Microsoft Graph API を使ってそれらのリソースに対して操作したときです。
Note
現状、UserUpdated
または GroupUpdated
イベントはユーザーまたはグループが作成されるときに生成されます。 これは既知の問題であり、今後のリリースで修正される予定です。
イベント名 | 説明 |
---|---|
Microsoft.Graph.UserUpdated | Microsoft Entra ID のユーザーが作成または更新されたときにトリガーされます。 |
Microsoft.Graph.UserDeleted | Microsoft Entra ID のユーザーが完全に削除されたときにトリガーされます。 |
Microsoft.Graph.GroupUpdated | Microsoft Entra ID のグループが作成または更新されたときにトリガーされます。 |
Microsoft.Graph.GroupDeleted | Microsoft Entra ID のグループが完全に削除されたときにトリガーされます。 |
Note
既定では、ユーザーまたはグループを削除しても論理的な削除操作が行われるだけです。つまり、ユーザーまたはグループは削除済みとしてマークされますが、ユーザーまたはグループのオブジェクトはまだ存在しています。 ユーザーが論理的に削除されると、Microsoft Graph は更新されたイベントを送信します。 ユーザーを完全に削除するには、Azure portal の [ユーザーの削除] ページに移動し、[完全に削除] を選択します。 グループを完全に削除する手順も同様です。
イベントの例
イベントがトリガーされると、Event Grid サービスにより、そのイベントに関するデータがサブスクライブしている宛先に送信されます。 このセクションには、各 Microsoft Entra イベントでそのデータがどのように見えるかの例が含まれています。
Microsoft.Graph.UserUpdated イベント
{
"id": "00d8a100-2e92-4bfa-86e1-0056dacd0fce",
"type": "Microsoft.Graph.UserUpdated",
"source": "/tenants/<tenant-id>/applications/<application-id>",
"subject": "Users/<user-id>",
"time": "2022-05-24T22:24:31.3062901Z",
"datacontenttype": "application/json",
"specversion": "1.0",
"data": {
"changeType": "updated",
"clientState": "<guid>",
"resource": "Users/<user-id>",
"resourceData": {
"@odata.type": "#Microsoft.Graph.User",
"@odata.id": "Users/<user-id>",
"id": "<user-id>",
"organizationId": "<tenant-id>",
"eventTime": "2022-05-24T22:24:31.3062901Z",
"sequenceNumber": <sequence-number>
},
"subscriptionExpirationDateTime": "2022-05-24T23:21:19.3554403+00:00",
"subscriptionId": "<microsoft-graph-subscription-id>",
"tenantId": "<tenant-id>
}
}
Microsoft.Graph.UserDeleted イベント
{
"id": "00d8a100-2e92-4bfa-86e1-0056dacd0fce",
"type": "Microsoft.Graph.UserDeleted",
"source": "/tenants/<tenant-id>/applications/<application-id>",
"subject": "Users/<user-id>",
"time": "2022-05-24T22:24:31.3062901Z",
"datacontenttype": "application/json",
"specversion": "1.0",
"data": {
"changeType": "deleted",
"clientState": "<guid>",
"resource": "Users/<user-id>",
"resourceData": {
"@odata.type": "#Microsoft.Graph.User",
"@odata.id": "Users/<user-id>",
"id": "<user-id>",
"organizationId": "<tenant-id>",
"eventTime": "2022-05-24T22:24:31.3062901Z",
"sequenceNumber": <sequence-number>
},
"subscriptionExpirationDateTime": "2022-05-24T23:21:19.3554403+00:00",
"subscriptionId": "<microsoft-graph-subscription-id>",
"tenantId": "<tenant-id>
}
}
Microsoft.Graph.GroupUpdated イベント
{
"id": "00d8a100-2e92-4bfa-86e1-0056dacd0fce",
"type": "Microsoft.Graph.GroupUpdated",
"source": "/tenants/<tenant-id>/applications/<application-id>",
"subject": "Groups/<group-id>",
"time": "2022-05-24T22:24:31.3062901Z",
"datacontenttype": "application/json",
"specversion": "1.0",
"data": {
"changeType": "updated",
"clientState": "<guid>",
"resource": "Groups/<group-id>",
"resourceData": {
"@odata.type": "#Microsoft.Graph.Group",
"@odata.id": "Groups/<group-id>",
"id": "<group-id>",
"organizationId": "<tenant-id>",
"eventTime": "2022-05-24T22:24:31.3062901Z",
"sequenceNumber": <sequence-number>
},
"subscriptionExpirationDateTime": "2022-05-24T23:21:19.3554403+00:00",
"subscriptionId": "<microsoft-graph-subscription-id>",
"tenantId": "<tenant-id>
}
}
Microsoft.Graph.GroupDeleted イベント
{
"id": "00d8a100-2e92-4bfa-86e1-0056dacd0fce",
"type": "Microsoft.Graph.GroupDeleted",
"source": "/tenants/<tenant-id>/applications/<application-id>",
"subject": "Groups/<group-id>",
"time": "2022-05-24T22:24:31.3062901Z",
"datacontenttype": "application/json",
"specversion": "1.0",
"data": {
"changeType": "deleted",
"clientState": "<guid>",
"resource": "Groups/<group-id>",
"resourceData": {
"@odata.type": "#Microsoft.Graph.Group",
"@odata.id": "Groups/<group-id>",
"id": "<group-id>",
"organizationId": "<tenant-id>",
"eventTime": "2022-05-24T22:24:31.3062901Z",
"sequenceNumber": <sequence-number>
},
"subscriptionExpirationDateTime": "2022-05-24T23:21:19.3554403+00:00",
"subscriptionId": "<microsoft-graph-subscription-id>",
"tenantId": "<tenant-id>
}
}
イベントのプロパティ
イベントのトップレベルのデータを次に示します。
プロパティ | タイプ | 説明 |
---|---|---|
source |
string | テナント イベント ソース。 このフィールドは書き込み可能ではありません。 この値は Microsoft Graph API によって指定されます。 |
subject |
string | 発行元が定義したイベントの対象のパス。 |
type |
string | このイベント ソース用イベントの種類のいずれか。 |
time |
string | プロバイダーの UTC 時刻に基づくイベントの生成時刻。 |
id |
string | イベントの一意識別子。 |
data |
object | リソースの状態変更に関するデータを提供するイベント ペイロード。 |
specversion |
string | CloudEvents スキーマ仕様バージョン。 |
データ オブジェクトには、次のプロパティがあります。
プロパティ | タイプ | 説明 |
---|---|---|
changeType |
string | リソースの状態変更の種類。 |
resource |
string | イベントが発生したリソースの識別子。 |
tenantId |
string | ユーザーまたはグループが保持されている組織 ID。 |
clientState |
string | Graph API サブスクリプションの作成時にユーザーが指定したシークレット。 |
@odata.type |
string | Graph API の変更の種類。 |
@odata.id |
string | イベントが発生した Graph API リソースの識別子。 |
id |
string | イベントが発生したリソースの識別子。 |
organizationId |
string | Microsoft Entra テナント識別子。 |
eventTime |
string | リソースの状態が変更された時刻。 |
sequenceNumber |
string | シーケンス番号です。 |
subscriptionExpirationDateTime |
string | Graph API サブスクリプションが期限切れになる RFC 3339 形式の時刻。 |
subscriptionId |
string | Graph API サブスクリプション識別子。 |
tenantId |
string | Microsoft Entra テナント識別子。 |
次のステップ
- Azure Event Grid のパートナー イベントの概要については、パートナー イベントの概要に関する記事を参照してください。
- Microsoft Entra イベントを受け取るために Microsoft Graph API イベントをサブスクライブする方法については、Azure Graph API イベントをサブスクライブする方法に関する記事を参照してください。
- Azure Event Grid イベント ハンドラーの詳細については、イベント ハンドラーに関する記事を参照してください。
- Azure Event Grid サブスクリプションの作成の詳細については、「イベント サブスクリプションの作成」と「Event Grid サブスクリプション スキーマ」を参照してください。
- 配信する特定のイベントを選ぶようにイベント サブスクリプションを構成する方法の詳細については、イベントのフィルター処理に関する記事を参照してください。