イベントフックフィールドリファレンス
ISPMのイベントフックは、検出された問題がアカウント(人間またはサービス)、ユーザー(個人)、またはOAuth付与(エージェント)のどれに関連しているかに応じて、異なるペイロード構造を提供します。これは意図的なものです。
-
アカウントの問題:アカウント(人間またはサービス)は、正確に1つのソース製品に属します。
sourceProductNameとsourceProductTenantは、affectedEntityの中に直接表示されます。 -
ユーザー(個人)の問題:個人は、複数の製品(Okta、Azure、AWSなど)にわたってアカウントを持つことができる、関連付けられたIDです。ソース情報は
additionalData.activeAccounts[]内に表示されます。各エントリは、そのユーザーが保持する1つのアカウントを表します。 - OAuth付与の課題:クライアントアプリがユーザーに代わってリソースアプリにアクセスするためのユーザーの認可。ユーザーがOAuth同意画面を承認すると、クライアントアプリはアクセストークンを受け取り、そのトークンを使用してユーザーとしてリソースアプリのAPIを呼び出します。
clientAppおよびresourceAppは、additionalDataの中に表示されます。
ペイロードには常にadditionalDataオブジェクトが含まれますが、特定の課題タイプに関連するフィールドのみが入力されます。
アカウントの問題
ペイロードの例
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"type": "Account",
"displayName": "Ali Lesch",
"identifierInService": "ali.lesch@example.com",
"sourceProductName": "Okta",
"sourceProductTenant": "Example Corp",
"additionalData": {
"username": "ali.lesch@example.com",
"types": [{ "type": "Admin", "reasons": ["Member of Org Admins group"] }],
"lastLogin": "2025-05-04T18:22:00Z",
"unrotatedTokens": [{
"type": "API Token",
"methodName": "ali_api_key",
"createdAt": "2025-05-05T09:03:03Z",
"lastUsed": "2025-05-05T10:06:46Z",
"lastRotated": "2025-05-05T09:03:03Z",
"nextRotation": null,
"expires": "2026-05-04T00:00:00Z"
}]
}
}
人間またはサービスアカウントで検出された問題(たとえば、ローテーションされていないキーやトークン、未使用の管理者アカウントなど)の場合、ペイロードにはadditionalDataにIDと資格情報の詳細が含まれます。各アカウントは正確に1つのソース製品に属します。
|
フィールド |
説明 |
|---|---|
| username | 影響を受けるアカウントの表示名またはログイン |
| タイプ | アカウントに割り当てられているロールタイプ(「管理者」や「ユーザー」など) |
| lastlogin | アカウントの最終ログイン日(形式:MM/DD/YYYY) |
| unrotatedTokens | アラートをトリガーした資格情報 |
アカウントタイプのオプション
-
Super Admin -
Admin -
Service -
External -
PIM -
Emergency Admin -
Inaccessible -
AI Agent -
Keys or tokens -
Unknown
UnrotatedTokenTypeのオプション
-
API Key -
API Token -
Access Key -
Certificate -
Service Principal -
Personal Access Token -
Username-Key-Pair -
OAuth Access Token -
Personal Access Token (Classic) -
Personal Access Token (Fine Grained) -
SSH Key
UnrotatedTokenTypeのプロパティ
unrotatedTokens配列には、アラートをトリガーした資格情報が含まれます。各トークンオブジェクトには、次のプロパティがあります。
|
フィールド |
説明 |
|---|---|
| 種類 | 資格情報タイプ |
| 作成時刻(createdAt) | 資格情報が作成された日時 |
| methodName | 所有者が資格情報に与えた名前または識別子 |
| lastUsed | 資格情報が最後に使用された日時 |
| lastRotated | 最終ローテーションのタイムスタンプ |
| nextRotation | 次回に予定されたローテーション(該当する場合) |
| 期限が切れる | 有効期限(該当する場合) |
ペイロードの構造
{
"id": "string",
"type": "Account",
"displayName": "string",
"identifierInService": "string (optional)",
"sourceProductName": "string (see sourceProductName list)",
"sourceProductTenant": "string — tenant/directory name as shown in the Issues page",
"sourceProductParentTenant": "string (optional) — AWS Account only: parent AWS org display name",
"additionalData": {
"username": "string",
"types": [
{ "type": "<AccountType>", "reasons": ["string"] }
],
"lastLogin": "ISO 8601 (optional)",
"unrotatedTokens": [
{
"type": "<UnrotatedTokenType>",
"methodName": "string (optional)",
"createdAt": "ISO 8601 (optional)",
"lastUsed": "ISO 8601 (optional)",
"lastRotated": "ISO 8601 (optional)",
"nextRotation": "ISO 8601 (optional)",
"expires": "ISO 8601 (optional)"
}
]
}
}
ユーザー(個人)の課題
ペイロードの例
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"type": "Person",
"displayName": "Ali Lesch",
"sourceProductName": "Okta",
"sourceProductTenant": "Example Corp",
"additionalData": {
"activeAccounts": [
{
"id": "a1b2c3d4",
"displayName": "Ali Lesch",
"sourceProductName": "Okta",
"sourceProductTenant": "Example Corp"
}
]
}
}
ユーザーに関連する問題(たとえば、部分的にオフボーディングされたユーザー)の場合、ペイロードには接続された製品全体でその個人に属するすべてのアカウントが一覧表示されます。
|
フィールド |
説明 |
|---|---|
| activeAccounts | 接続された製品全体で、このユーザーに属するすべてのアカウント |
| activeAccounts[].id | ソース製品内にあるアカウントの一意の識別子 |
| activeAccounts[].displayName | 人間が判読可能なアカウント名 |
| activeAccounts[].sourceProductName | このアカウントが属するソース |
| activeAccounts[].sourceProductTenant | ISPMに表示されるテナント名 |
OAuth付与
additionalDataフィールドclientAppおよびresourceApp が必須です。 {
"id": "string",
"type": "AggregatedOAuthGrantAccount",
"displayName": "string",
"additionalData": {
"clientApp": { "id": "string", "type": "<UnifiedRefType>", "title": "string", "subtitle": "string (optional)", "image": "string (optional)", "deletedAt": "ISO 8601 (optional)" },
"resourceApp": { "id": "string", "type": "<UnifiedRefType>", "title": "string", "subtitle": "string (optional)", "image": "string (optional)", "deletedAt": "ISO 8601 (optional)" }
}
}ソース製品リファレンス
以下の表は、イベントフックのペイロードに表示されるsourceProductName値に、各接続済みプラットフォームをマッピングしたものです。
| Source(ソース) | sourceProductNameの値 |
|---|---|
| Okta | Okta |
| AAD | AAD |
| Google Workspace | Google Workspace |
| AWS (AWS-account-level) | AWSアカウント |
| Salesforce | Salesforce.com |
| Snowflake | Snowflakeアカウント |
| GitHub(EMU) | GitHub EMU |
| GitHub(organization) | GitHub Organization |
| GitLab | GitLab |
| 自己管理(GitLab) | GitLab Self Managed |
| Google Cloud Platform | Google Cloud Platform |
| Microsoft Azure | Azure Cloud |
| Jira | Jira |
| Box | Box |
| Workday | Workday |
| Active Directory(オンプレミス) | Active Directory |
sourceProductParentTenantは、ISPMがAWS orgの問題を検出した場合にのみ入力されます。これはaffectedEntityセクションにあり、AWS orgの名前を指定します。