Azure Event Grid での Azure リソース通知 - リソース管理イベント
Azure Resource Management システム トピックには、さまざまな Azure リソースのライフ サイクルに関する分析情報が用意されています。
Azure サブスクリプションと Azure リソース グループの Event Grid システム トピックには、シナリオのアクション イベント、書き込みイベント、削除イベントなど、成功、失敗、キャンセルも含め、幅広い種類のイベントを使用したリソース ライフ サイクル イベントが用意されています。 ただし、リソース ペイロードが含まれていないことに注目してください。 これらのイベントの詳細については、Azure サブスクリプションの Event Grid システム トピックと Azure リソース グループの Event Grid システム トピックに関する記事を参照してください。
これに対し、Azure リソース通知 (ARN) を利用した Azure Resource Management システム トピックでは、イベントの種類を、特に CreatedOrUpdated
(Event Grid Azure サブスクリプション システム トピックの ResourceWriteSuccess
に対応) と Deleted
(Event Grid Azure サブスクリプション システム トピックの ResourceDeleteSuccess
に対応) にターゲットを絞って選択できます。 これらのイベントには包括的なペイロード情報が付属しているため、お客様は、より簡単にフィルター処理の適用と通知ストリームの調整を行うことができます。
公開されているリソースの種類の一覧については、Azure Resource Graph リソースを確認するか、次の Azure Resource Graph クエリを使用してください。
resources
| distinct ['type']
Note
Azure Resource Management システム トピックは、Azure Resource Graph のリソース テーブルのすべてのリソースの種類をサポートしているわけではありません。 このエクスペリエンスの改善に取り組んでいます。
イベントの種類
ARN Resources システム トピックでは、次の 2 種類のイベントを使用できます。
イベントの種類 | 説明 |
---|---|
Microsoft.ResourceNotifications.Resources.CreatedOrUpdated |
リソースが正常に作成または更新されると発生します。 |
Microsoft.ResourceNotifications.Resources.Deleted |
リソースが削除されると発生します。 |
ロールベースのアクセス制御
現在、これらのイベントは Azure サブスクリプション スコープでのみ出力されます。 これは、このトピックの種類に対するイベント サブスクリプションを作成しているエンティティは、この Azure サブスクリプション全体で通知を受け取ることを意味します。 セキュリティ上の理由から、Azure サブスクリプション全体の読み取りアクセス権を持つプリンシパルだけが、このトピックについてのイベント サブスクリプションを作成できるように、制限する必要があります。 このシステム トピックを介してデータにアクセスするには、Event Grid で必要な汎用アクセス許可に加えて、Azure リソース通知に固有の次のアクセス許可が必要です: Microsoft.ResourceNotifications/systemTopics/subscribeToResources/action
。
イベント スキーマ
このセクションでは、CreatedOrUpdated
イベントと Deleted
イベントのスキーマについて説明します。
CreatedOrUpdated イベントのイベント スキーマ
スキーマを次に示します。
{
"id": "string",
"source": "string",
"subject": "string",
"data": {
"resourceInfo": {
"id": "string",
"name": "string",
"type": "string",
"location": "string",
"tags": "string",
"properties": {
"_comment": "object-unique-to-each-publisher"
}
},
"apiVersion": "string",
"operationalInfo": {
"resourceEventTime": "datetime"
}
},
"type": "string",
"specversion": "string",
"time": "string"
}
Deleted イベントのイベント スキーマ
スキーマを次に示します。
{
"id": "string",
"source": "string",
"subject": "string",
"data": {
"resourceInfo": {
"id": "string",
"name": "string",
"type": "string"
},
"operationalInfo": {
"resourceEventTime": "datetime"
}
},
"type": "string",
"specversion": "string",
"time": "string"
}
Event Grid イベント スキーマ形式のイベントには、次の最上位のプロパティがあります。
プロパティ | タイプ | 説明 |
---|---|---|
id |
String | イベントの一意識別子 |
topic |
String | このシステム トピックが作成されている Azure サブスクリプション |
subject |
String | このイベントが生成された基本リソースへの発行元定義のパス。 |
data |
オブジェクト | リソース プロバイダーに固有のイベント データが含まれます。 詳細については、次の表を参照してください。 |
eventType |
String | このシステム トピックの種類の登録されているイベントの種類 |
dataVersion |
String | データ オブジェクトのスキーマ バージョン |
metadataVersion |
String | イベント メタデータのスキーマ バージョン |
eventTime |
String 形式: 2022-11-07T18:43:09.2894075Z |
プロバイダーの UTC 時刻に基づくイベントの生成時刻。 |
クラウド イベント スキーマ形式のイベントには、次の最上位のプロパティがあります。
プロパティ | タイプ | 説明 |
---|---|---|
id |
String | イベントの一意識別子 |
source |
String | このシステム トピックが作成されている Azure サブスクリプション。 |
subject |
String | このイベントが生成された基本リソースへの発行元定義のパス。 |
type |
String | このシステム トピックの種類の登録されているイベントの種類 |
time |
String 形式: 2022-11-07T18:43:09.2894075Z |
プロバイダーの UTC 時刻に基づくイベントの生成時刻。 |
data |
オブジェクト | リソース プロバイダーに固有のイベント データが含まれます。 詳細については、次の表を参照してください。 |
specversion |
String | CloudEvents スキーマ仕様バージョン。 |
data
オブジェクトには、次のプロパティがあります。
プロパティ | タイプ | 内容 |
---|---|---|
resourceInfo |
オブジェクト | リソースに固有のデータ。 詳細については、次の表を参照してください。 |
apiVersion |
String | リソース プロパティの API バージョン。 |
operationalInfo |
オブジェクト | リソースに関連する運用情報の詳細。 |
resourceInfo
オブジェクトには、CreatedOrUpdated
イベントと Deleted
イベントの間に次の共通プロパティがあります。
プロパティ | タイプ | 説明 |
---|---|---|
id |
String | 発行元が定義したイベントの対象のパス |
name |
String | このフィールドはイベント ID を示します。常に、id フィールドの最後のセクションの値になります。 |
type |
String | 生成されているイベントの種類。 このコンテキストでは、Microsoft.ResourceNotifications.Resources.CreatedOrUpdated または Microsoft.ResourceNotifications.Resources.Deleted です。 |
CreatedOrUpdated
イベントの resourceInfo
オブジェクトには、次の追加プロパティがあります。
プロパティ | タイプ | 説明 |
---|---|---|
location |
String | リソースが配置されている場所またはリージョン。 |
tags |
String | リソースのタグ。 |
properties |
オブジェクト | リソースのペイロード。 |
properties
オブジェクトが含まれているのは CreatedOrUpdated
イベントのみです。 この properties
オブジェクトのスキーマは、それぞれの公開元に固有です。 スキーマを検出するには、特定の Azure リソースに関する REST API のドキュメントを参照してください。 例は、この記事の「イベントの例」セクションで確認できます。
"properties": {
"_comment": "<< object-unique-to-each-publisher >>"
}
operationalInfo
オブジェクトには、次のプロパティがあります。
プロパティ | タイプ | 説明 |
---|---|---|
resourceEventTime |
DateTime | リソースが作成または更新された日時 (CreatedOrUpdated イベントの場合)、または削除された日時 (Deleted イベントの場合)。 |
イベントの例
CreatedOrUpdated イベント
このセクションでは、システム トピックが作成された Azure サブスクリプションに Azure ストレージ アカウントが作成されると生成される CreatedOrUpdated
イベントを示しています。
{
"id": "4eef929a-a65c-47dd-93e2-46b8c17c6c17",
"source": "/subscriptions/{subscription-id}",
"subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
"data": {
"resourceInfo": {
"tags": {},
"id": "/subscriptions/{subcription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
"name": "StorageAccount-name",
"type": "Microsoft.Storage/storageAccounts",
"location": "eastus",
"properties": {
"privateEndpointConnections": [],
"minimumTlsVersion": "TLS1_2",
"allowBlobPublicAccess": 1,
"allowSharedKeyAccess": 1,
"networkAcls": {
"bypass": "AzureServices",
"virtualNetworkRules": [],
"ipRules": [],
"defaultAction": "Allow"
},
"supportsHttpsTrafficOnly": 1,
"encryption": {
"requireInfrastructureEncryption": 0,
"services": {
"file": {
"keyType": "Account",
"enabled": 1,
"lastEnabledTime": "2023-07-28T20:12:50.6380308Z"
},
"blob": {
"keyType": "Account",
"enabled": 1,
"lastEnabledTime": "2023-07-28T20:12:50.6380308Z"
}
},
"keySource": "Microsoft.Storage"
},
"accessTier": "Hot",
"provisioningState": "Succeeded",
"creationTime": "2023-07-28T20:12:50.4661564Z",
"primaryEndpoints": {
"dfs": "https://{storageAccount-name}.dfs.core.windows.net/",
"web": "https://{storageAccount-name}.z13.web.core.windows.net/",
"blob": "https://{storageAccount-name}.blob.core.windows.net/",
"queue": "https://{storageAccount-name}.queue.core.windows.net/",
"table": "https://{storageAccount-name}.table.core.windows.net/",
"file": "https://{storageAccount-name}.file.core.windows.net/"
},
"primaryLocation": "eastus",
"statusOfPrimary": "available",
"secondaryLocation": "westus",
"statusOfSecondary": "available",
"secondaryEndpoints": {
"dfs": "https://{storageAccount-name} -secondary.dfs.core.windows.net/",
"web": "https://{storageAccount-name}-secondary.z13.web.core.windows.net/",
"blob": "https://{storageAccount-name}-secondary.blob.core.windows.net/",
"queue": "https://{storageAccount-name}-secondary.queue.core.windows.net/",
"table": "https://{storageAccount-name}-secondary.table.core.windows.net/"
}
}
},
"apiVersion": "2019-06-01",
"operationalInfo": {
"resourceEventTime": "2023-07-28T20:13:10.8418063Z"
}
},
"type": "Microsoft.ResourceNotifications.Resources.CreatedOrUpdated",
"specversion": "1.0",
"time": "2023-07-28T20:13:10.8418063Z"
}
削除されたイベント
このセクションでは、システム トピックが作成された Azure サブスクリプションで Azure ストレージ アカウントが削除されると生成される Deleted
イベントを示しています。
{
"id": "d4611260-d179-4f86-b196-3a9d4128be2d",
"source": "/subscriptions/{subscription-id}",
"subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
"data": {
"resourceInfo": {
"id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
"name": "storageAccount-name",
"type": "Microsoft.Storage/storageAccounts"
},
"operationalInfo": {
"resourceEventTime": "2023-07-28T20:11:36.6347858Z"
}
},
"type": "Microsoft.ResourceNotifications.Resources.Deleted",
"specversion": "1.0",
"time": "2023-07-28T20:11:36.6347858Z"
}
お問い合わせ
この機能について質問またはフィードバックがある場合は、ご遠慮なく arnsupport@microsoft.com までお問い合わせください。
特定のイベントについての特定のフィードバックがさらに適切に処理されるように、次の情報を提供してください。
見つからないイベントの場合:
- システム トピックの種類の名前
- 操作が実行された時点のおおよそのタイムスタンプ (UTC)
- 通知が生成されたベース リソース ID
- Azure portal でリソースに移動し、右端にある JSON ビューを選択します。 リソース ID は、JSON ビュー ページの最初のフィールドです。
- 予期されるイベントの種類
- 実行された操作 (起動または停止した VM、作成されたストレージ アカウントなど)
- 発生した問題の説明 (VM は起動したが Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged イベントが生成されない、など)
- 可能であれば、実行された操作の関連付け ID を入力してください
遅延したコンテンツや予期しないコンテンツを含むイベントの場合
- システム トピックの種類の名前
- 通知のすべての内容 (data.resourceInfo.properties を除く)
- 発生した問題と影響を受けたフィールド値の説明
このデータを共有する際は、エンド ユーザーを特定できる情報を提供しないでください。
次のステップ
Azure リソース通知 - リソース管理イベントのサブスクライブに関するページを参照してください。