Okta SSO のソース設定
Okta SSO との統合
CloudWatch パイプラインは Okta System Log API を使用して、Okta SSO テナントから認証、API アクティビティ、検出結果、およびエンティティ管理イベントを取得します。
Okta SSO による認証
ログを読み込むには、パイプラインが Okta SSO テナントで認証される必要があります。Okta SSO では、認証は Okta API Services アプリケーションを介した OAuth 2.0 Client Credentials (JWT アサーション) フローを使用して実行されます。
認証用のプライベートキーとパブリックキーのペアを生成する
管理者アカウントを使用して Okta Admin Console にサインインします。
[アプリケーション] → [アプリケーション] に移動します。
既存の API Services アプリケーションを選択するか、新しいアプリケーションを作成します。
[全般] の [クライアント認証情報] を選択して、パブリックキーをアップロードするか、新しいキーを生成します。このキーペアは、署名付き JWT アサーションを使用した認証に使用されます。
アプリケーションに必要な OAuth スコープ (具体的には
okta.logs.read) が割り当てられていることを確認します。[Admin Roles]、[Edit assignments]、[ロール] (読み取り専用管理者を選択) の順に選択します。
アプリケーションのクライアント ID をコピーします。
client_id と client_secret (プライベートキー) を AWS Secrets Manager に保存します。
client_idとclient_secret(private_key)は、JWT アサーションの署名に使用される RSA プライベートキーです。Okta Organization URL を特定し、パイプラインで設定します (例:
https://yourdomain.okta.com)。
設定が完了すると、パイプラインは Okta の OAuth 2.0 Client Credentials (JWT アサーション) フローを使用して認証し、Okta System Log API からの監査ログイベントの取得を開始できるようになります。
CloudWatch パイプラインの設定
ログを読み込むようにパイプラインを設定するには、データソースとして Okta SSO を選択します。Okta ドメイン名などの必要な情報を入力します。パイプラインを作成してアクティブ化すると、Okta SSO からの監査ログデータが、選択した CloudWatch Logs ロググループに流れ始めます。
サポートされているオープンサイバーセキュリティスキーマフレームワークイベントクラス
この統合では、OCSF スキーマのバージョン v1.5.0 と、認証 (3002)、API アクティビティ(6003)、検出結果 (2004)、およびエンティティ管理 (3004) にマッピングする Okta イベントがサポートされています。
認証には次のイベントが含まれます。
user.authentication.auth
user.authentication.auth_via_AD_agent
user.authentication.auth_via_IDP
user.authentication.auth_via_LDAP_agent
user.authentication.auth_via_inbound_SAML
user.authentication.auth_via_inbound_delauth
user.authentication.auth_via_iwa
user.authentication.auth_via_mfa
user.authentication.auth_via_radius
user.authentication.auth_via_richclient
user.authentication.auth_via_social
user.authentication.authenticate
user.authentication.sso
user.session.start
user.session.impersonation.grant
app.oauth2.signon
user.session.impersonation.initiate
user.authentication.universal_logout
user.session.clear
user.session.end
user.authentication.slo
user.authentication.universal_logout.scheduled
user.session.expire
user.session.impersonation.end
user.authentication.verify
policy.evaluate_sign_on
user.mfa.attempt_bypass
user.mfa.okta_verify
user.mfa.okta_verify.deny_push
user.mfa.okta_verify.deny_push_upgrade_need
user.mfa.factor.activate
user.mfa.factor.deactivate
user.mfa.factor.reset_all
user.mfa.factor.suspend
user.mfa.factor.unsuspend
user.mfa.factor.update
user.session.impersonation.extend
user.session.impersonation.revoke
user.session.access_admin_app
user.session.context.change
application.policy.sign_on.deny_access
user.authentication.auth_unconfigured_identifier
user.authentication.dsso_via_non_priority_source
app.oauth2.invalid_client_credentials
policy.auth_reevaluate.fail
API アクティビティには、次のイベントが含まれます。
oauth2.claim.created
oauth2.scope.created
security.trusted_origin.create
system.api_token.create
Workflows.user.table.view
app.oauth2.as.key.rollover
app.saml.sensitive.attribute.update
system.api_token.update
oauth2.claim.updated
oauth2.scope.updated
security.events.provider.deactivate
system.api_token.revoke
oauth2.claim.deleted
oauth2.scope.deleted
検出結果には次のイベントが含まれます。
security.attack.start
security.breached_credential.detected
security.request.blocked
security.threat.detected
security.zone.make_blacklist
system.rate_limit.violation
user.account.report_suspicious_activity_by_enduser
user.risk.change
user.risk.detect
zone.make_blacklist
security.attack.end
エンティティ管理には、次のイベントが含まれます。
iam.role.create
system.idp.lifecycle.create
application.lifecycle.create
group.lifecycle.create
user.lifecycle.create
policy.lifecycle.create
zone.create
oauth2.as.created
event_hook.created
inline_hook.created
pam.security_policy.create
iam.resourceset.create
pam.secret.create
analytics.reports.export.download
app.audit_report.download
system.idp.lifecycle.read_client_secret
app.oauth2.client.read_client_secret
pam.secret.reveal
pam.service_account.password.reveal
support.org.update
system.idp.lifecycle.update
application.lifecycle.update
policy.lifecycle.update
user.account.update_profile
user.account.update_password
user.account.reset_password
group.profile.update
zone.update
group.privilege.grant
group.privilege.revoke
iam.resourceset.bindings.add
user.account.privilege.grant
user.account.privilege.revoke
pki.cert.lifecycle.revoke
iam.resourceset.update
iam.role.update
pam.security_policy.update
oauth2.as.updated
event_hook.updated
inline_hook.updated
pam.secret.update
iam.resourceset.bindings.delete
iam.role.delete
pam.security_policy.delete
policy.lifecycle.delete
user.lifecycle.delete.initiated
application.lifecycle.delete
group.lifecycle.delete
zone.delete
oauth2.as.deleted
event_hook.deleted
inline_hook.deleted
iam.resourceset.delete
pam.secret.delete
device.enrollment.create
credential.register
credential.revoke
policy.lifecycle.activate
system.feature.enable
event_hook.activated
inline_hook.activated
system.feature.disable
application.lifecycle.activate
user.lifecycle.activate
zone.activate
oauth2.as.activated
system.log_stream.lifecycle.activate
policy.lifecycle.deactivate
security.authenticator.lifecycle.deactivate
application.lifecycle.deactivate
user.lifecycle.deactivate
zone.deactivate
event_hook.deactivated
inline_hook.deactivated
system.log_stream.lifecycle.deactivate
oauth2.as.deactivated
user.account.lock
user.account.lock.limit
user.lifecycle.suspend
device.lifecycle.suspend
user.account.unlock
user.lifecycle.unsuspend
device.lifecycle.unsuspend
user.lifecycle.reactivate