Identity AIops について
Identity AIopsは、Keycloakまたはauthentikをセルフホストするチーム向けのアイデンティティ運用ツールです。ユーザー、イベント、OAuthクライアントを扱い、ログイン失敗分析、アクセス監査、MFA適用率分析を提供します。操作には監査、リスク分類、取り消し情報が記録されます。
主な機能
- 01ユーザー、セッション、認証情報の照会
- 02認証イベントと管理イベントの照会
- 03ログイン失敗の原因分析
- 04休眠アクセスとクライアント設定の監査
- 05MFA適用率の分析
- 06管理されたID操作と取り消し
活用シーン
- 01攻撃とクライアント設定不備のログイン失敗の切り分け
- 02休眠アカウントと孤立セッションの特定
- 03OAuthリダイレクトと許可設定の確認
- 04MFA未設定ユーザーの特定
MCP 対応
MCPサーバーとして、Keycloakとauthentik向けに、ID・イベント照会、分析、管理された書き込み、取り消しを含む29個のツールを提供します。すべての呼び出しを監査し、可逆な書き込みでは実際の変更前状態を保存します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
29掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| target | any | いいえ | |
| max_events | integer | いいえ | |
| window_minutes | integer | いいえ |
詳細
Identity AIops
セルフホスト可能なアイデンティティプロバイダー向けの、ガバナンスが効いた AI 運用 — Keycloak + authentik。
identity-aiops は、AI エージェント(およびその監督者である人間)が、自社構築のインフラや小規模・中規模インフラのアイデンティティプレーンを安全かつ監査可能な方法で運用できるようにします。誰がサインインできるか、何がなぜ失敗したか、設定に誤りのある OAuth クライアントはどれか、二要素認証をまだ設定していないユーザーは誰かを確認できます。自社で Keycloak または authentik を運用し、証跡を伴うエージェント主導のアイデンティティ運用を求めるチーム向けに構築されています。すべてのツール呼び出しが監査され、書き込みにはリスク階層ラベル、ドライランのプレビュー、取り消しトークンが付与されます。
検証状況:公開されている Keycloak 管理 REST API と authentik API v3 を基にモデル化し、モックレスポンスに対してテストしています。稼働中のインスタンスに対するエンドツーエンド実行の記録はまだありません。稼働環境での確認を最も早く行う方法は
identity-aiops doctorです。詳しくはdocs/VERIFICATION.mdをご覧ください。
提供機能
| 領域 | ツール |
|---|---|
| レルム/システム | 概要、レルム設定(総当たり攻撃対策、パスワード/OTP ポリシー)、アイデンティティプロバイダー |
| ユーザー | 一覧/検索、詳細、件数、セッション、認証情報(MFA 関連機能)、グループ、メンバー、ロックアウト状態 |
| イベント | 認証イベント、管理/設定変更イベント |
| クライアント | 一覧、詳細、クライアントごとのセッション、セッション統計 |
| 主要な RCA 機能 | login_failure_rca — 総当たり攻撃(スプレー型/標的型)、設定に誤りのあるクライアント、期限切れ認証情報による急増、ロックアウトの急増を判別します。stale_access_audit — 休眠ユーザー、一度もログインしていないアカウント、対話的に使用されているサービスアカウント、孤立セッションを検出します。client_misconfig_audit — ワイルドカード/http リダイレクト URI、シークレットを持つパブリッククライアント、インプリシットフロー、PKCE の欠如、パスワードグラントをリスク順に検出します。mfa_coverage_analysis — 適用率、未適用の項目一覧 |
| ガバナンス付きの書き込み | disable_user/enable_user(取り消しペア)、revoke_user_sessions、require_password_reset(取り消し時にフラグを解除)、update_client_redirect_uris(取り消し時に以前のリストを再適用)、rotate_client_secret(以前の状態をマスク) |
MCP ツールは 29 個です。21 個の読み取りツール(4 つの分析を含む)、6 個のガバナンス付き書き込みツール、2 個の取り消しツール(undo_list、undo_apply)で構成されています。同じツールが両方のプラットフォームで動作し、ターゲットごとの platform フィールドで API の形式(認証フローとリソースパス)を選択します。
対応プラットフォーム
| プラットフォーム | API | 認証 |
|---|---|---|
| keycloak | 管理 REST API(/admin/realms/{realm}/...) | /realms/{realm}/protocol/openid-connect/token に対する OAuth2 クライアント認証情報グラント。401 時に有効期間の短いトークンを自動更新 |
| authentik | API v3(/api/v3/...) | 有効期間の長い API トークン(Bearer) |
プラットフォームに関する注意:require_password_reset、rotate_client_secret、client_sessions、client_session_stats、user_lockout_status は Keycloak の形式です(authentik には同等のエンドポイントがないため、これらのツールは該当環境で案内エラーを返します)。authentik では、古いアクセスの監査で孤立セッションを確認する際に使う、グローバルなセッション一覧を取得できます。
対応プラットフォーム(Authelia、Zitadel、Ory など)、エンドポイント、または必要な分析機能がありませんか? 不足機能についての issue/PR を歓迎します — https://github.com/AIops-tools/Identity-AIops で issue または PR を作成してください。機能リクエストも歓迎します。
このツールが行うこと、行わないこと
このツールは、ID プロバイダーの操作(読み取りと書き込み)を正確に実行し、そのすべてを記録します。書き込みを許可するかどうかは判断しません。それを判断するのはエージェント、または接続先アカウントの権限です。Keycloak のサービスアカウント(または authentik のトークン)には、エージェントに持たせたいロールだけを付与してください。view-users / view-events / view-clients のみを付与し、manage-* は付与しなければ、書き込みは権限を実際に管理するサーバーで失敗します。
そのため、読み取り専用の切り替え設定も、ポリシーファイルも、設定が必要な承認ゲートもありません。このツールが保証するのは、何も記録されずに処理されることがないという点です。MCP 経由でも CLI 経由でも、すべての呼び出しが監査行として ~/.identity-aiops/audit.db に記録されます。また、取り消し可能な書き込みでは、書き込み前の状態(推測ではなく取得したもの)も保存し、再実行可能な逆操作を記録します。
各ツールは
risk_levelを宣言し、説明用のティアとして監査行に記録します。これにより、レビュー担当者は、たとえばある行が高リスクのシークレットローテーションだったことをひと目で確認できます。これはラベルであり、ゲートではありません。
より小規模なモデルやローカルモデルを実行していますか? agent-guardrails.md をご覧ください。このツールがユーザーに代わって適用するガードレール(プロンプトのトークンを使って繰り返し説明する必要がなくなります)と、残りの設定用にすぐ使えるシステムプロンプトが記載されています。
クイックスタート
Claude Code プラグインとして
1 回のインストールで、エージェントにスキルと MCP サーバーの両方を導入できます。
/plugin marketplace add AIops-tools/marketplace
/plugin install identity-aiops@aiops-tools
MCP サーバーは uv で取得され、このプラグインが宣言するパッケージバージョンに固定されます。そのため、監査行からそれを書き込んだコードをたどれます。認証情報は引き続き identity-aiops init で設定します。下記をご覧ください。
OpenClaw プラグインとして
同じバンドルが ClawHub で公開されており、1 回のインストールでスキルと MCP サーバーをまとめて導入できます。
openclaw plugins install clawhub:@zw008/identity-aiops
openclaw skills info identity-aiops # expect: Visible to model: yes
インストール後、OpenClaw ゲートウェイを再起動してプラグインを読み込ませてください。MCP サーバーは uv で取得され、この正確なリリースに固定されるため、uvx が PATH に含まれている必要があります。含まれていない場合、スキルはインストールされますが、Visible to model: no と表示されます。認証情報は以下と同じ方法で設定します。
CLI またはスタンドアロンの MCP サーバーとして
uv tool install identity-aiops # or: pipx install identity-aiops
identity-aiops init # wizard: target + realm + credential (encrypted)
identity-aiops doctor # token acquisition + user-count probe per target
identity-aiops overview # one-shot estate summary
Keycloak の場合は、Service accounts roles を有効にしたconfidential clientを作成し、そのサービスアカウントにエージェントに持たせたい realm-management ロールを付与してください(まずは view-users、view-events、view-clients を付与し、管理対象の書き込みを許可する場合に限り manage-users / manage-clients を追加してください)。authentik の場合は、(最小権限の)管理者ユーザー用に API トークンを作成してください。
CLI のコマンド一覧:users(list/show/sessions/credentials + disable/enable/revoke-sessions/require-reset)、clients(list/show + set-redirect-uris/rotate-secret)、events、overview、doctor、secret、init、mcp。書き込みコマンドは --dry-run を受け付け、必ず二重確認を行います。実行はガバナンス対象の MCP の対応コマンドに委譲されるため、CLI からの書き込みも監査ログに記録されます。
MCP の設定
{
"mcpServers": {
"identity-aiops": {
"command": "uvx",
"args": ["--from", "identity-aiops", "identity-aiops-mcp"],
"env": {
"IDENTITY_AIOPS_MASTER_PASSWORD": "<master password for secrets.enc>"
}
}
}
}
env-block に関する注意:MCP クライアントは最小限の環境でサーバーを起動するため、シェルのプロファイルで設定された変数は引き継がれません。サーバーが必要とする変数(
IDENTITY_AIOPS_MASTER_PASSWORD、別のIDENTITY_AIOPS_HOME、監査証跡の書き込みを担当者に帰属させるためのIDENTITY_AUDIT_APPROVED_BY)は、上記のenvブロックに設定する必要があります。
ガバナンス
すべての MCP ツールは、ベンダーとして同梱されたガバナンスハーネス
(identity_aiops/governance/、外部依存関係なし)を通じて実行されます。
- 監査 — エラーを含むすべての呼び出しが、パラメーター、ステータス、リスクレベルとともに
~/.identity-aiops/audit.dbに記録されます。任意で承認者/理由の注釈も記録されます。記録するだけで、承認は行いません。 - 予算 — セッションごとの呼び出し数/実行時間の予算と、暴走時のブレーカー
(
IDENTITY_MAX_TOOL_CALLS、IDENTITY_MAX_TOOL_SECONDS、IDENTITY_RUNAWAY_MAX)を備えています。これは安全策であり、承認ゲートではありません。 - リスクティア — 読み取りは
low、封じ込め/衛生管理の書き込み(disable_user、revoke_user_sessions、require_password_reset)はmedium、 アクセス権の付与や境界の置き換えを伴う書き込み(enable_user、update_client_redirect_uris、rotate_client_secret)はhighです。ティアは監査行に記録される説明用のラベルであり、ゲートではありません。書き込みを実行するかどうかは、エージェントの判断、または接続アカウントの権限によって決まります。IDENTITY_AUDIT_APPROVED_BY/IDENTITY_AUDIT_RATIONALEは任意の注釈で、設定されている場合に記録されます。必須ではありません。 - 取り消し — 元に戻せる書き込みでは、実際の変更前の状態を取得して保存し(推測は行いません)、再実行可能な逆操作の記述子を
~/.identity-aiops/undo.dbに記録します。元に戻せない書き込み(revoke_user_sessions、rotate_client_secret)ではpriorStateのみを記録します。シークレットは マスクされ、平文では保存されません。 - サニタイズ — IdP から返されるすべての文字列は、エージェントに渡される前に、インジェクション対策された正規化処理(長さの制限、制御文字の除去)を経由します。
- シークレット — 認証情報は Fernet 暗号化(scrypt 由来の鍵)されて
~/.identity-aiops/secrets.encに保存され、ディスク上に平文で保存されることはありません。従来のIDENTITY_<TARGET>_SECRET環境変数はフォールバックとして引き続き利用でき、identity-aiops secret migrateで移行できます。TLS 検証はデフォルトで有効です。
設定
~/.identity-aiops/config.yaml(init によって作成):
targets:
- name: sso1
platform: keycloak
base_url: https://sso.example.com
realm: master
username: identity-aiops-agent # the confidential client's client_id
verify_ssl: true
- name: ak1
platform: authentik
base_url: https://auth.example.com
verify_ssl: true
IDENTITY_AIOPS_HOME を設定すると、すべての状態(設定、シークレット、監査、
取り消し)の保存先を変更できます。IDENTITY_AIOPS_CONFIG は、MCP サーバーが参照する別の
設定ファイルを指定します。
開発
uv sync
uv run pytest -q
uv run ruff check .
MIT ライセンス。AIops-tools ラインの一部です。セルフホスト可能なインフラストラクチャ向けの、ガバナンスを備えた AIops ツールです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。