Skip to content
🚀 EDDI 6.5.0

19のLLMプロバイダー、サイトをクロールしファイルを読み込むナレッジベース、互換性のあるエージェントバージョンに追従する会話新機能

マネージドクラウド 始める
すべてのインテグレーション
IDとセキュリティOIDC

Keycloak / OIDC

Keycloak などの OIDC プロバイダーを使って、EDDIの前段に OpenID Connect 認証を置きます。管理者、編集者、ユーザー、閲覧者、承認者のロールを備えています。

得られるもの

  • ID プロバイダー経由での Manager と API へのログイン
  • ロール: eddi-admin、eddi-editor、eddi-user、eddi-viewer、および承認の判断を行う eddi-approver
  • インストーラーが Keycloak にインポートする、構成済みの eddi レルム
  • サインイン中のユーザーとして実行される呼び出しにより、監査証跡に実在の人物が記録される

EDDIでの仕組み

  1. インストーラーを --with-auth 付きで実行します。Keycloak が起動し、初回起動時に eddi レルムがインポートされます。
  2. Keycloak の管理コンソールで eddi ユーザーのパスワードを設定します。同梱のレルムにはパスワードが設定されていません。
  3. Manager にサインインします。必要なロールをメンバーに付与し、承認者を eddi-approver に追加します。
  4. 既存の ID プロバイダーを使う場合は、QUARKUS_OIDC_* 変数(テナントの有効化、認証サーバーのURL、クライアントID、クライアントシークレット)を設定します。
  5. HTTP 呼び出しでは、共有の認証情報の代わりに ${caller:token} を使い、サインイン中のユーザー自身のトークンで API を呼び出します。

設定

EDDIのドキュメントに基づいています。your-agent-id のようなプレースホルダーは、ご自身の値に置き換えてください。

Install with KeycloakKeycloak を追加するインストーラーのオプションです。
bash install.sh --with-auth
Point EDDI at your identity provider外部 OIDC プロバイダー用の環境変数です(EDDIドキュメントより)。
docker run -d \
  -p 7070:7070 \
  -e MONGODB_CONNECTIONSTRING='mongodb://mongo:27017/eddi?retryWrites=true&w=majority' \
  -e QUARKUS_OIDC_TENANT_ENABLED=true \
  -e QUARKUS_OIDC_AUTH_SERVER_URL='https://keycloak.example.com/realms/eddi' \
  -e QUARKUS_OIDC_CLIENT_ID=eddi \
  -e QUARKUS_OIDC_CREDENTIALS_SECRET="$OIDC_CLIENT_SECRET" \
  labsai/eddi:6.4.0

ガバナンス

  • 本番の起動モードでは、明示的にオプトアウトしない限り、OIDC が無効のままではEDDIは起動を拒否します。そのため、管理 API が公開された状態になるのは、偶然ではなく意図した判断の結果です。
  • 承認のエンドポイントには、eddi-approver ロール、またはオーナーか eddi-admin が必要です。
  • ${caller:token} を使うと、監査証跡には実際のユーザーが記録されます。共有の固定認証情報を使うと、すべての操作が1つのプリンシパルにまとまってしまいます。

知っておくべきこと

  • 認証はオプションで、デフォルトではオフです。インストーラーがプロビジョニングするのは Keycloak です。他の OIDC プロバイダーも同じ設定を使用しますが、一部の詳細(たとえば A2A で公開されるトークンエンドポイント)は、設定しない限り Keycloak のパスを前提とします。
  • 同梱のレルムのインポートは1回限りです。その後に JSON を編集しても、稼働中の Keycloak には反映されません。

関連するインテグレーション

このページの設定と動作は、2026-10-14に確認したEDDIのドキュメントに基づいています。フィールド名やデフォルト値はリリースによって変わることがあるため、お使いのバージョンのドキュメントで確認してください。