第15章 イベントを追跡する監査の設定


Red Hat build of Keycloak には、一連の監査機能が含まれています。すべてのログインおよび管理者のアクションを記録し、管理コンソールでそれらのアクションを確認できます。Red Hat build of Keycloak には、イベントをリッスンしてアクションをトリガーできる Listener SPI も含まれています。ビルトインリスナーの例には、ログファイルとイベント発生時のメールの送信が含まれます。

15.1. ユーザーイベントの監査

ユーザーに影響するすべてのイベントを記録および表示できます。Red Hat build of Keycloak は、ユーザーがログインに成功した場合、ユーザーが間違ったパスワードを入力した場合、ユーザーがアカウントを更新した場合などのアクションに対して、ログインイベントをトリガーします。デフォルトでは、Red Hat build of Keycloak は、管理コンソールにイベントを保存または表示しません。管理コンソールとサーバーのログファイルにエラーイベントのみがログに記録されます。

手順

この手順を使用して、ユーザーイベントの監査を開始します。

  1. メニューで Realm settings をクリックします。
  2. Events タブをクリックします。
  3. User events settings タブをクリックします。
  4. Save eventsON に切り替えます。

    ユーザーイベントの設定

    User events settings

  5. Expiration フィールドにイベントを保存する時間を指定します。
  6. Add saved types をクリックして、保存できる他のイベントを表示します。

    タイプを追加

    Add types

  7. Add をクリックします。

保存したすべてのイベントを削除するには、Clear user events をクリックします。

手順

イベントを閲覧できるようになりました。

  1. メニューの Events タブをクリックします。

    ユーザーイベント

    Login Events

  2. イベントをフィルタリングするには、Search user event をクリックします。

    ユーザーイベントの検索

    Search user event

15.1.1. イベントタイプ

ログインイベント:

Expand
イベント説明

ログイン

ユーザーがログインする。

登録

ユーザーが登録する。

ログアウト

ユーザーがログアウトする。

トークンへのコード

アプリケーションまたはクライアントはトークンのコードを交換する。

トークンの更新

アプリケーションまたはクライアントはトークンを更新する。

ブルートフォース保護:

Expand
イベント説明

永続的なロックアウトによるユーザーの無効化

ログイン失敗回数が多すぎるため、ブルートフォース保護によりユーザーアカウントが永久に無効になりました。

一時的なロックアウトによるユーザーの無効化

ログイン失敗回数が多すぎるため、ブルートフォース保護によりユーザーアカウントが一時的に無効になりました。

Identity Brokering:

Expand
イベント説明

フェデレーションアイデンティティーリンクのオーバーライド

既存のフェデレーションアイデンティティーリンクがオーバーライドされました

フェデレーションアイデンティティーリンクのオーバーライドエラー

既存のフェデレーションアイデンティティーリンクをオーバーライドしようとしたときにエラーが発生しました

OAuth:

Expand
イベント説明

OAuth2 拡張付与

OAuth2 の付与が実行されました

OAuth2 拡張付与エラー

OAuth2 の付与実行中にエラーが発生しました

アカウントイベント:

Expand
イベント説明

ソーシャルリンク

ユーザーアカウントはソーシャルメディアプロバイダーにリンクされます。

ソーシャルリンクの削除

ソーシャルメディアアカウントからユーザーアカウントへのリンク。

メールの更新

アカウントのメールアドレスを変更します。

プロファイルの更新

アカウントのプロファイルを変更します。

パスワードリセットの送信

Red Hat build of Keycloak は、パスワードリセットメールを送信します。

パスワードの更新 (非推奨)

アカウントのパスワードを変更します。

認証情報の更新

アカウントのパスワードまたは (時間ベースの) ワンタイムパスワード (OTP/TOTP) 設定が変更されます。

TOTP の更新 (非推奨)

アカウントの時間ベースのワンタイムパスワード (TOTP) 設定を変更します。

TOTP の削除 (非推奨)

Red Hat build of Keycloak は、アカウントから TOTP を削除します。

認証情報の削除

Red Hat build of Keycloak はアカウントから認証情報を削除します。

確認メールの送信

Red Hat build of Keycloak は、メールを検証するためのメールを送信します。

メールの確認

Red Hat build of Keycloak は、アカウントのメールアドレスを検証します。

各イベントには、対応するエラーイベントがあります。

15.1.2. イベントリスナー

イベントリスナーはイベントをリッスンし、そのイベントに基づいてアクションを実行します。Red Hat build of Keycloak には、Logging Event Listener と Email Event Listener の 2 つのビルトインリスナーが含まれています。

15.1.2.1. Logging Event Listener (ロギングイベントリスナー)

Logging Event Listener を有効にすると、このリスナーはエラーイベントの発生時にログファイルに書き込みます。

Logging Event Listener からのログメッセージの例:

11:36:09,965 WARN  [org.keycloak.events] (default task-51) type=LOGIN_ERROR, realmId=master,
                    clientId=myapp,
                    userId=19aeb848-96fc-44f6-b0a3-59a17570d374, ipAddress=127.0.0.1,
                    error=invalid_user_credentials, auth_method=openid-connect, auth_type=code,
                    redirect_uri=http://localhost:8180/myapp,
                    code_id=b669da14-cdbb-41d0-b055-0810a0334607, username=admin
Copy to Clipboard Toggle word wrap

Logging Event Listener を使用して、ハッカーのボット攻撃から保護できます。

  1. LOGIN_ERROR イベントのログファイルを解析します。
  2. 失敗したログインイベントの IP アドレスを抽出します。
  3. IP アドレスを侵入防止ソフトウェアフレームワークツールに送信します。

Logging Event Listener は、イベントを org.keycloak.events ログカテゴリーに記録します。Red Hat build of Keycloak には、デフォルトでサーバーログにデバッグログイベントが含まれていません。

デバッグログイベントをサーバーログに含めるには、以下を実行します。

  1. org.keycloak.events カテゴリーのログレベルを変更します。
  2. Logging Event Listener によって使用されるログレベルを変更します。

Logging Event Listener によって使用されるログレベルを変更するには、以下を追加します。

bin/kc.[sh|bat] start --spi-events-listener-jboss-logging-success-level=info --spi-events-listener-jboss-logging-error-level=error
Copy to Clipboard Toggle word wrap

ログレベルの有効な値は debuginfowarnerror、および fatal です。

15.1.2.2. Email Event Listener (メールイベントリスナー)

Email Event Listener は、イベントが発生したときにユーザーのメールアドレスにメッセージを送信し、次のイベントをサポートします。

  • ログインエラー
  • パスワードの更新
  • 時間ベースのワンタイムパスワード (TOTP) の更新
  • ワンタイムパスワード (OTP) の削除
  • 認証情報の更新
  • 認証情報の削除

以下は設定できるオプションのイベントです。

  • 永続的なロックアウトによるユーザーの無効化
  • 一時的なロックアウトによるユーザーの無効化

メールを送信するには、次の条件を満たす必要があります。

  • ユーザーにメールアドレスがある。
  • ユーザーのメールアドレスが確認済みとしてマークされている。

前提条件

  • レルムのメール設定が行われている。

手順

メールリスナーを有効にするには、以下を実行します。

  1. メニューで Realm settings をクリックします。
  2. Events タブをクリックします。
  3. Event listeners フィールドをクリックします。
  4. email を選択します。

    Event listeners

    Event listeners

--spi-events-listener-email-exclude-events 引数を使用してイベントを除外できます。以下に例を示します。

kc.[sh|bat] --spi-events-listener-email-exclude-events=UPDATE_CREDENTIAL,REMOVE_CREDENTIAL
Copy to Clipboard Toggle word wrap

オプションのイベントを有効にするには、次のコマンドを使用します。

kc.[sh|bat] --spi-events-listener-email-include-events=USER_DISABLED_BY_TEMPORARY_LOCKOUT_ERROR,USER_DISABLED_BY_PERMANENT_LOCKOUT
Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat