Okta ログを収集する

以下でサポートされています。

このドキュメントでは、Okta API を使用して Okta ログを Google Security Operations に取り込む方法について説明します。パーサーはシステムログを抽出し、JSON 配列内の単一イベントとバッチイベントの両方を処理します。データを UDM 形式に正規化し、Okta フィールドを UDM の同等のフィールドにマッピングします。また、解析されたユーザー エージェント、地理情報、認証の詳細でデータを拡充し、結果とリスク情報に基づいてセキュリティ結果イベントを生成します。

始める前に

  • Google SecOps インスタンス
  • Okta への特権アクセス

Okta を構成する方法

Okta SSO を構成するには、次のタスクを完了します。

読み取り専用権限を持つ Okta 管理ユーザーを作成する

  1. Okta 管理コンソールにログインします。
  2. 標準ユーザーを作成します。

    • [ディレクトリ] > [ユーザー] に移動します。
    • [ユーザーを追加] をクリックし、必須項目を入力します。
  3. [セキュリティ] > [管理者] を選択します。

  4. [管理者を追加] をクリックします。

  5. [管理者による管理者の割り当て] フィールドで、標準ユーザーを見つけます。

  6. [ロール] セクションで、リストから [読み取り専用管理者] を選択します。

  7. 管理者アカウントからログアウトします。

API キーを取得

  1. 読み取り専用管理者ユーザーで Okta 管理者コンソールにログインします。
  2. [セキュリティ] > [API] > [トークン] に移動します。
  3. [トークンの作成] をクリックします。
  4. トークンにわかりやすい名前を付けます。
  5. API が使用される IP ゾーンを指定します(不明な場合は [任意の IP] を選択できます)。
  6. [トークンの作成] をクリックします。
  7. API キーをコピーします。
  8. [OK] をクリックします。

フィードを設定する

Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。

  • [SIEM 設定] > [フィード] > [新しいフィードを追加]
  • Content Hub > Content Packs > Get Started

Okta フィードの設定方法

このログタイプを構成する手順は次のとおりです。

  1. [Okta] パックをクリックします。
  2. Okta ログタイプを見つけます。
  3. 次のフィールドに値を指定します。

    • ソースタイプ: サードパーティ API(推奨)
    • Authentication HTTP header: Okta API キーを Authorization:<API_KEY> 形式で入力します。
    • API ホスト名: Okta ホストのドメイン名(例: <your-domain>.okta.com)を指定します。
    • アセットの名前空間: アセットの名前空間
    • Ingestion labels: このフィードのイベントに適用されるラベル。

    詳細オプション

  4. [フィードを作成] をクリックします。

このプロダクト ファミリー内の異なるログタイプに対して複数のフィードを構成する方法については、プロダクト別にフィードを構成するをご覧ください。

UDM マッピング テーブル

ログフィールド UDM マッピング 備考
actor.displayName principal.resource.attribute.labels
assigned_group[] security_result.detection_fields
created target.resource.attribute.labels
credentials.oauthClient.autoKeyRotation security_result.detection_fields
credentials.oauthClient.pkce_required security_result.detection_fields
credentials.oauthClient.token_endpoint_auth_method security_result.detection_fields
credentials.signing.kid security_result.detection_fields
credentials.userNameTemplate.pushStatus security_result.detection_fields
credentials.userNameTemplate.template metadata.product_event_type
credentials.userNameTemplate.type security_result.detection_fields
id principal.user.userid
label target.resource.attribute.labels
lastUpdated target.resource.attribute.labels
orn target.resource.attribute.labels
settings.implicitAssignment security_result.detection_fields
settings.manualProvisioning security_result.detection_fields
settings.notifications.vpn.network.connection security_result.detection_fields
settings.notifications.vpn.network.helpUrl security_result.detection_fields
settings.notifications.vpn.network.message security_result.detection_fields
settings.oauthClient.application_type security_result.detection_fields
settings.oauthClient.client_uri security_result.detection_fields
settings.oauthClient.consent_method security_result.detection_fields
settings.oauthClient.dpop_bound_access_tokens security_result.detection_fields
settings.oauthClient.grant_types[] security_result.detection_fields
settings.oauthClient.idp_initiated_login.mode security_result.detection_fields
settings.oauthClient.initiate_login_uri security_result.detection_fields
settings.oauthClient.issuer_mode security_result.detection_fields
settings.oauthClient.logo_uri security_result.detection_fields
settings.oauthClient.pkce_required security_result.detection_fields
settings.oauthClient.redirect_uris[] security_result.detection_fields
settings.oauthClient.response_types[] security_result.detection_fields
settings.oauthClient.token_endpoint_auth_method security_result.detection_fields
settings.oauthClient.wildcard_redirect security_result.detection_fields
settings.signOn.acsUrl security_result.detection_fields
settings.signOn.assertionSigned security_result.detection_fields
settings.signOn.attributeStatements[0].filterType security_result.detection_fields
settings.signOn.attributeStatements[0].filterValue security_result.detection_fields
settings.signOn.attributeStatements[0].name security_result.detection_fields
settings.signOn.attributeStatements[0].namespace security_result.detection_fields
settings.signOn.attributeStatements[0].type security_result.detection_fields
settings.signOn.audience security_result.detection_fields
settings.signOn.authnContextClassRef security_result.detection_fields
settings.signOn.defaultRelayState security_result.detection_fields
settings.signOn.destination security_result.detection_fields
settings.signOn.digestAlgorithm security_result.detection_fields
settings.signOn.idpIssuer security_result.detection_fields
settings.signOn.recipient security_result.detection_fields
settings.signOn.responseSigned security_result.detection_fields
settings.signOn.signatureAlgorithm security_result.detection_fields
settings.signOn.subjectNameIdFormat security_result.detection_fields
settings.signOn.subjectNameIdTemplate security_result.detection_fields
signOnMode security_result.detection_fields
status security_result.detection_fields
visibility.appLinks.oidc_client_link security_result.detection_fields
visibility.autoSubmitToolbar security_result.detection_fields
visibility.hide.iOS security_result.detection_fields
visibility.hide.web security_result.detection_fields
なし metadata.vendor_name Okta に設定します。
なし metadata.product_name Okta に設定します。
なし extensions.auth.type SSO に設定します。

配列マッピング テーブル

次の表に、Okta 配列要素と繰り返し UDM フィールドのマッピングを示します。

ログの配列 イベントの配列 備考
actor.alternateId TBD
actor.displayName principal.user.user_display_name eventType が application.user_membership.updatepolicy.rule.update、または user.authentication.auth_via_radius の場合。
actor.displayName principal.user.user_display_name eventType が application.user_membership.updatepolicy.rule.updateuser.authentication.auth_via_radius ではない場合。
actor.type principal.user.attribute.roles.name eventType が application.user_membership.updatepolicy.rule.update、または user.authentication.auth_via_radius の場合。
actor.type principal.user.attribute.roles.name eventType が application.user_membership.updatepolicy.rule.updateuser.authentication.auth_via_radius ではない場合。
anonymous security_result.detection_fields
authenticationContext.externalSessionId network.parent_session_id
client.device principal.asset.type サポート: LINUX、WINDOWS、MAC、IOS、ANDROID、CHROME_OS
client.device additional.fields Event_type
client.geographicalContext.city principal.location.city
client.geographicalContext.country principal.location.country_or_region
client.geographicalContext.geolocation.lat principal.location.region_latitude
client.geographicalContext.geolocation.lon principal.location.region_longitude
client.geographicalContext.postalCode additional.fields
client.geographicalContext.postalCode target.resource.attribute.labels
client.ipAddress principal.ip
client.userAgent network.http.user_agent
network.http.parsed_user_agent
client.userAgent.browser target.resource.attribute.labels
client.userAgent.os principal.platform
client.userAgent.os principal.platform
client.userAgent.rawUserAgent network.http.user_agent
network.http.parsed_user_agent
client.zone additional.fields Event_type
debugContext.debugData.behaviors.New City security_result.detection_fields
debugContext.debugData.behaviors.New Country security_result.detection_fields
debugContext.debugData.behaviors.New Device security_result.detection_fields
debugContext.debugData.behaviors.New Geo-Location security_result.detection_fields
debugContext.debugData.behaviors.New IP security_result.detection_fields
debugContext.debugData.behaviors.New State security_result.detection_fields
debugContext.debugData.behaviors.Velocity security_result.detection_fields
debugContext.debugData.clientAddress principal.ip
principal.asset.ip
debugContext.debugData.dtHash security_result.detection_fields
debugContext.debugData.factor security_result.detection_fields
debugContext.debugData.factorIntent security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors security_result.description
debugContext.debugData.logOnlySecurityData.behaviors.New City security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors.New Country security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors.New Device security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors.New Geo-Location security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors.New IP security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors.New State security_result.detection_fields
debugContext.debugData.logOnlySecurityData.behaviors.Velocity security_result.detection_fields
debugContext.debugData.logOnlySecurityData.risk.reasons security_result.detection_fields
debugContext.debugData.logOnlySecurityData.risk.reasons security_result.description
debugContext.debugData.logOnlySecurityData.risk.level security_result.severity_details
debugContext.debugData.logOnlySecurityData.url target.url
debugContext.debugData.privilegeGranted[] target.user.attribute.roles.name
target.user.attribute.roles.description
debugContext.debugData.pushOnlyResponseType security_result.detection_fields
debugContext.debugData.pushWithNumberChallengeResponseType security_result.detection_fields
debugContext.debugData.requestUri extensions.auth.auth_details
debugContext.debugData.requestUri target.url
debugContext.debugData.risk security_result.detection_fields 理由を security_result.detection_fields にマッピングしました。
debugContext.debugData.suspiciousActivityEventId security_result.detection_fields
debugContext.debugData.suspiciousActivityEventType security_result.detection_fields
debugContext.debugData.threatDetections security_result.detection_fields
debugContext.debugData.threatSuspected security_result.detection_fields
security_result.threat_status
debugContext.debugData.threatSuspected security_result.detection_fields
security_result.threat_status
debugContext.debugData.tunnels[].anonymous security_result.detection_fields
debugContext.debugData.tunnels[].operator security_result.detection_fields
debugContext.debugData.tunnels[].type security_result.detection_fields
debugContext.debugData.tunnels.n.anonymous security_result.detection_fields
debugContext.debugData.tunnels.n.operator security_result.detection_fields
debugContext.debugData.tunnels.n.type security_result.detection_fields
detail.actor.id principal.user.product_object_id eventType が application.user_membership.updatepolicy.rule.update、または user.authentication.auth_via_radius の場合。
detail.actor.id principal.user.product_object_id eventType が application.user_membership.updatepolicy.rule.updateuser.authentication.auth_via_radius ではない場合。
detail.authenticationContext.externalSessionId network.parent_session_id
detail.client.ipChain.0.ip
client.ipAddress
principal.ip
principal.asset.ip
detail.debugContext.debugData.dtHash security_result.detection_fields
detail.debugContext.debugData.factor security_result.detection_fields
detail.debugContext.debugData.factorIntent security_result.detection_fields
detail.debugContext.debugData.pushOnlyResponseType security_result.detection_fields
detail.debugContext.debugData.pushWithNumberChallengeResponseType security_result.detection_fields
detail.debugContext.debugData.requestUri target.url
detail.eventType metadata.product_event_type
detail.outcome.reason security_result.category_details
detail.outcome.result security_result.action
detail.request.ipChain.0.geographicalContext.city principal.location.city
detail.request.ipChain.0.geographicalContext.country principal.location.country_or_region
detail.request.ipChain.0.geographicalContext.state principal.location.state
detail.severity security_result.severity
detail.target.0.alternateId 備考を参照してください。 tgtuser_id => target.user.userid
%{tgtusername}@%{tgtdomain} => target.user.email_addresses
detail.target.0.displayName target.application
target.resource.name
detail.target.0.displayName target.user.user_display_name
detail.target.0.detailEntry.policyType} target.resource_ancestors.attribute.labels
detail.target.0.id target.resource.product_object_id
detail.target.0.id target.resource_ancestors.product_object_id
detail.target.0.type target.resource.resource_subtype
detail.target.0.type target.resource_ancestors.resource_subtype
detail.uuid metadata.product_log_id
displayMessage security_result.summary
extensions.auth.type SSO Event_type
extensions.auth.type SSO msg.target.typeAppInstancePolicyEntityPolicyRuleUser 以外のケースの場合。
eventType metadata.product_event_type
eventType
detail.eventType
metadata.product_event_type
json_array.n.actor.id principal.user.product_object_id
mapped data.fields to fields
metadata.product_name Okta Event_type
metadata.vendor_name Okta Event_type
msg.actor.alternateId 備考を参照してください。 解析に失敗した場合は principal.user.userid にマッピングされ、それ以外の場合はユーザー名を principal.user.userid
にマッピングするか、username@domain を principal.user.email_addresses にマッピングします。
msg.actor.displayName principal.user.user_display_name
msg.actor.type principal.user.attribute.roles.name
msg.authenticationContext.authenticationProvider security_result.detection_fields Event_type
msg.authenticationContext.credentialProvider security_result.detection_fields Event_type
msg.authenticationContext.externalSessionId network.parent_session_id
msg.client.device principal.asset.type サポート: MOBILE、WORKSTATION、LAPTOP、IOT、NETWORK_ATTACHED_STORAGE、PRINTER、SCANNER、SERVER、TAPE_LIBRARY
msg.client.geographicalContext.city principal.location.city
msg.client.geographicalContext.country principal.location.country_or_region
msg.client.geographicalContext.geolocation.lat principal.location.region_latitude
msg.client.geographicalContext.geolocation.lon principal.location.region_longitude
msg.client.geographicalContext.postalCode additional.fields
msg.client.geographicalContext.state principal.location.state
msg.client.ipAddress principal.ip
msg.client.userAgent.browser target.resource.attribute.labels
msg.client.userAgent.os principal.platform サポート: LINUX、WINDOWS、MAC、IOS、ANDROID、CHROME_OS
msg.client.userAgent.rawUserAgent network.http.user_agent
network.http.parsed_user_agent
msg.debugContext.debugData.dtHash security_result.detection_fields
msg.debugContext.debugData.factor security_result.detection_fields
msg.debugContext.debugData.factorIntent security_result.detection_fields
msg.debugContext.debugData.logOnlySecurityData.behaviors security_result.description
msg.debugContext.debugData.logOnlySecurityData.risk.reasons security_result.detection_fields
msg.debugContext.debugData.logOnlySecurityData.url target.url
msg.debugContext.debugData.pushOnlyResponseType security_result.detection_fields
msg.debugContext.debugData.pushWithNumberChallengeResponseType security_result.detection_fields
msg.debugContext.debugData.requestUri extensions.auth.auth_details
msg.debugContext.debugData.threatSuspected security_result.detection_fields
security_result.threat_status
msg.displayMessage security_result.summary
msg.eventType metadata.product_event_type
msg.legacyEventType security_result.detection_fields
msg.outcome.reason security_result.category_details
msg.outcome.result security_result.action
msg.published metadata.event_timestamp
msg.request.ipChain.n.geographicalContext.city intermediary[n].location.city
msg.request.ipChain.n.geographicalContext.country intermediary[n].location.country_or_region
msg.request.ipChain.n.geographicalContext.geolocation.lat intermediary[n].location.region_latitude
msg.request.ipChain.n.geographicalContext.geolocation.lon intermediary[n].location.region_longitude
msg.request.ipChain.n.geographicalContext.state intermediary[n].location.state
msg.request.ipChain.n.ip intermediary[n].ip
msg.securityContext.asNumber security_result.detection_fields
msg.securityContext.asOrg security_result.detection_fields
msg.securityContext.domain security_result.detection_fields
msg.securityContext.isProxy security_result.detection_fields
msg.securityContext.isp security_result.detection_fields
msg.severity security_result.severity
msg.target.alternateId (when msg.target.type == User) target.user.email_addresses msg.target.type = User の場合。ただし、解析が失敗した場合は target.user.userid
にマッピングされ、それ以外の場合は
target_user_nametarget.user.userid にマッピングされます。
msg.target.detailEntry.policyType target.resource_ancestors.attribute.labels msg.target.type = PolicyEntity の場合。
msg.target.detailEntry.signOnModeType security_result.detection_fields msg.target.typeAppInstancePolicyEntityPolicyRuleUser 以外のケースの場合。
msg.target.displayName additional.fields
msg.target.displayName about.resource.name msg.target.typeAppInstancePolicyEntityPolicyRuleUser 以外のケースの場合。
msg.target.displayName principal.user.user_display_name msg.target.type = User の場合。
msg.target.displayName target.application msg.target.type = AppInstance の場合。
msg.target.displayName target.resource.name msg.target.type = AppInstance の場合。
msg.target.displayName target.resource.name msg.target.type = PolicyRule の場合。
msg.target.displayName target.resource_ancestors.name msg.target.type = PolicyEntity の場合。
msg.target.id about.resource.product_object_id msg.target.typeAppInstancePolicyEntityPolicyRuleUser 以外のケースの場合。
msg.target.id target.resource.product_object_id msg.target.type = AppInstance の場合。
msg.target.id target.resource.product_object_id msg.target.type = PolicyRule の場合。
msg.target.id target.resource_ancestors.product_object_id msg.target.type = PolicyEntity の場合。
msg.target.id target.user.product_object_id msg.target.type = User の場合。
msg.target.type about.resource.resource_subtype msg.target.typeAppInstancePolicyEntityPolicyRuleUser 以外のケースの場合。
msg.target.type target.resource.resource_subtype msg.target.type = AppInstance の場合。
msg.target.type target.resource.resource_subtype msg.target.type = PolicyRule の場合。
msg.target.type target.resource_ancestors.resource_subtype msg.target.type = PolicyEntity の場合。
msg.target.type target.user.attribute.roles.name msg.target.type = User の場合。
msg.transaction.id network.session_id
msg.transaction.type additional.fields Event_type
msg.uuid metadata.product_log_id
operator security_result.detection_fields
outcome.reason
detail.outcome.reason
security_result.category_details
outcome.result
detail.outcome.result
security_result.action
profile.displayName principal.user.user_display_name
profile.email principal.user.email_addresses
profile.login principal.user.userid username => principal.user.userid
published metadata.event_timestamp
published metadata.event_timestamp
request.ipChain.0.geographicalContext.city
detail.request.ipChain.0.geographicalContext.city
principal.location.city
request.ipChain.0.geographicalContext.country
detail.request.ipChain.0.geographicalContext.country
principal.location.country_or_region
request.ipChain.0.geographicalContext.state
detail.request.ipChain.0.geographicalContext.state
principal.location.state
request.ipChain.0.ip principal.ip
principal.asset.ip
request.ipChain.1.geographicalContext.city intermediary.location.city
request.ipChain.1.geographicalContext.country intermediary.location.country_or_region
request.ipChain.1.geographicalContext.state intermediary.location.state
securityContext.asNumber security_result.detection_fields
securityContext.asOrg security_result.detection_fields
securityContext.domain security_result.detection_fields
securityContext.isProxy security_result.detection_fields
securityContext.isProxy security_result.detection_fields
additional.fields
securityContext.isp security_result.detection_fields
severity
detail.severity
security_result.severity
target[].alternateId target.resource.attribute.labels
target[].detailEntry.methodTypeUsed target.resource_ancestors.attribute.labels
target[].detailEntry.methodUsedVerifiedProperties target.resource_ancestors.attribute.labels
target[].detailEntry.policyRuleFactorMode security_result.detection_fields
target[].detailEntry.policyType target.resource_ancestors.attribute.labels
target[].detailEntry.signOnModeType security_result.detection_fields
target[].displayName additional.fields
target[].displayName target.application
target.resource.name
target[].displayName target.resource.name
target[].displayName target.resource_ancestors.name
target[].id target.resource.product_object_id
target[].id target.resource_ancestors.product_object_id
target[].type target.resource.resource_subtype
target[].type target.resource_ancestors.resource_subtype
target.0.alternateId 備考を参照してください。 tgtuser_id => target.user.userid
%{tgtusername}@%{tgtdomain} => target.user.email_addresses
target.0.detailEntry.clientAppId target.asset_id
target.0.displayName
detail.target.0.displayName
target.user.user_display_name
target.0.displayName / target.1.displayName target.user.group_identifiers
target.0.id target.user.product_object_id
target.0.type
detail.target.0.type
target.user.attribute.roles.name
target.1.alternateId 備考を参照してください。 tgtuser_id => target.user.userid
%{tgtusername}@%{tgtdomain} => target.user.email_addresses
target.1.detailEntry.clientAppId target.asset_id
target.1.displayName target.user.user_display_name
target.1.id target.user.product_object_id
target.1.type target.user.attribute.roles.name
transaction.id network.session_id
type security_result.detection_fields
user_agent.browser target.resource.attribute.labels
user_email principal.user.email_addresses eventType が application.user_membership.updatepolicy.rule.update、または user.authentication.auth_via_radius の場合。
user_email principal.user.email_addresses eventType が application.user_membership.updatepolicy.rule.updateuser.authentication.auth_via_radius ではない場合。
user_id principal.user.userid eventType が application.user_membership.updatepolicy.rule.update、または user.authentication.auth_via_radius の場合。
user_id principal.user.userid eventType が application.user_membership.updatepolicy.rule.updateuser.authentication.auth_via_radius ではない場合。
uuid metadata.product_log_id
uuid metadata.product_log_id

UDM マッピング デルタ リファレンス

2025 年 8 月 26 日に、Google SecOps は Okta パーサーの新しいバージョンをリリースしました。このバージョンには、Okta ログフィールドから UDM フィールドへのマッピングの大きな変更と、イベントタイプのマッピングの変更が含まれています。

ログフィールド マッピングの差分

次の表に、2025 年 8 月 26 日より前に公開された Okta ログから UDM へのフィールドのマッピングの差分と、それ以降の差分を示します(それぞれ [以前のマッピング] 列と [現在のマッピング] 列に記載)。

ログフィールド 古いマッピング 現在のマッピング
client.geographicalContext.geolocation.lat target.location.region_latitude principal.location.region_coordinates.latitude
client.geographicalContext.geolocation.lon target.location.region_longitude principal.location.region_coordinates.longitude
created target.resource.attribute.labels metadata.event_timestamp
debugContext.debugData.authnRequestId additional.fields security_result.detection_fields
debugContext.debugData.factorType additional.fields security_result.detection_fields
debugContext.debugData.traceId additional.fields security_result.detection_fields
debugContext.debugData.tunnels.anonymous security_result.detection_fields network.proxy_info.anonymous
lastUpdated target.resource.attribute.labels target.resource.attribute.last_update_time
platform プラットフォームが iOS の場合 principal.platform = MAC principal.platform = IOS
securityContext.asOrg security_result.detection_fields network.organization_name
securityContext.isProxy additional.fields network.is_proxy
target.detailEntry.methodTypeUsed target.resource.attribute.labels security_result.detection_fields
target.detailEntry.methodUsedVerifiedProperties target.resource.attribute.labels security_result.detection_fields

イベントタイプ マッピングの差分

以前は汎用イベントとして分類されていた複数のイベントが、意味のあるイベントタイプで適切に分類されるようになりました。

次の表に、2025 年 8 月 26 日より前とそれ以降の Okta イベントタイプの処理の差分を示します(それぞれ [以前の event_type] 列と [現在のイベントタイプ] 列に記載されています)。

ログの eventType 以前の event_type 現在の event_type
app.oauth2.as.authorize USER_UNCATEGORIZED USER_LOGIN
app.oauth2.as.authorize.code USER_UNCATEGORIZED USER_LOGIN
app.oauth2.as.authorize.implicit.access_token USER_UNCATEGORIZED USER_LOGIN
app.oauth2.as.authorize.implicit.id_token USER_UNCATEGORIZED USER_LOGIN
app.oauth2.authorize.code USER_UNCATEGORIZED USER_LOGIN
app.oauth2.token.grant USER_UNCATEGORIZED USER_LOGIN
application.user_membership.remove USER_UNCATEGORIZED USER_CHANGE_PERMISSIONS
application.user_membership.update STATUS_UPDATE USER_CHANGE_PERMISSIONS
user.authentication.auth_via_AD_agent STATUS_UPDATE USER_UNCATEGORIZED
user.authentication.slo USER_UNCATEGORIZED USER_LOGOUT

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。