Keycloak ホスティング
集中化されたアイデンティティ、シングルサインオン、ユーザーフェデレーション、およびアプリケーションアクセス管理を提供します。
- ワンクリック デプロイ
- 50 GB 必要なディスクスペース
- 4 GB RAM 必要なメモリ
- 10 €から 価格

公式リンク
Keycloakの公式リンクとオリジナルウェブサイト
AvaHostで得られるもの
ワンクリックデプロイメント、カスタムドメイン、無料のHTTPS、自動アプリケーション更新、およびスケジュールされたバックアップがすべてのクラウドアプリに付属しています。1台のサーバーで複数のアプリを実行でき、ターミナルアクセスも含まれています。
アプリと共にプロビジョニングされ、AvaHostによって管理されないPostgreSQLコンテナがあります。

テクノロジー
- Dockerイメージ
- quay.io/keycloak/keycloak:26.0
- デフォルトポート
- 8080
- データベース
- postgres

Keycloakの仕組み
Keycloakはユーザーと彼らがアクセスする必要があるアプリケーションの間に位置します。管理者はレルムを作成し、クライアントを登録し、リダイレクトアドレスを定義し、ロールを設定し、認証フローを選択します。アプリケーションはOpenID Connect、OAuth 2.0、またはSAMLを使用して、すべてのログイン機能を独立して実装する代わりにサインインを委譲します。
アイデンティティブローカリングは、ユーザーを外部のOpenID ConnectまたはSAMLプロバイダーに送信できます。一方、ユーザーフェデレーションはLDAPやActive Directoryなどのサポートされているディレクトリサービスに接続できます。管理コンソールは、ユーザー、グループ、セッション、クライアント、スコープ、ロールマッピング、およびレルム設定を1つの場所から管理します。
Keycloakの主な機能
シングルサインオンにより、1つの認証済みセッションが複数の互換性のあるアプリケーションに対応できます。きめ細かいクライアントおよびロール設定により、どのアイデンティティが各サービスに到達できるかを制御します。テーマはユーザー向けページをカスタマイズし、認証フローはパスワード、ワンタイムクレデンシャル、パスキー、外部プロバイダー、およびその他の設定されたステップを組み合わせることができます。
中央アイデンティティはセキュリティの責任を集中させます。リダイレクトURI、クライアントシークレット、フェデレーション接続、管理者アカウント、トークンライフタイム、および署名キーは慎重に管理する必要があります。設定エラーは複数のアプリケーションに一度に影響を与える可能性があるため、変更は広く使用する前に別のレルムでテストする必要があります。
KeycloakとAuth0の比較
Keycloak
Keycloakは、標準ベースのプロトコル、レルム管理、ユーザーフェデレーション、およびアイデンティティブローカリングを備えた自己ホスト型のアイデンティティおよびアクセス管理サーバーです。Auth0は、ホストされたログイン、SSO、ソーシャルおよびパスワードレス方式、MFA、マシン間アクセス、およびベンダー運営インフラストラクチャを提供するクラウドアイデンティティプラットフォームです。
Auth0
Auth0は、プロバイダーがアイデンティティプラットフォームを運営し、商用サービスを通じて管理されたセキュリティ機能を公開することを望むチームに適している場合があります。Keycloakは、組織がアイデンティティデータと設定を直接制御する必要があり、セキュリティ上重要なサービスを運営および監査できる場合により適切です。
Keycloakの利用者
ソフトウェアチームは、内部ツール、カスタマーポータル、API、およびマルチアプリケーション環境のアイデンティティプロバイダーとしてKeycloakを使用します。大規模な組織はディレクトリまたは外部プロバイダーを接続し、開発チームは別のレルムを使用して製品、環境、または顧客グループを分離します。
このサービスはアクセスガバナンスの代替ではありません。管理者は、特権アカウント、クライアント登録、ロールレビュー、クレデンシャル回復、セッション制限、フェデレーション障害、および緊急アクセスのポリシーが必要です。

Keycloakの自己ホスト:要件とコスト
リソース使用量は、レルム、クライアント、ユーザー、アクティブセッション、トークン発行、認証の複雑さ、フェデレーショントラフィック、イベントログ、および管理活動に応じて増加します。PostgreSQLはレルム、ユーザー、クライアント、ロール、セッション、および設定を保存します。データベースは含まれていますが管理されておらず、そのメモリはエクスポートされたアプリケーション最小値の外にあります。
AvaHostは、データベース調整後の完全なKeycloakスタックに対してプラン4(€20)を推奨します。ワンクリックデプロイメント、カスタムアイデンティティドメイン、自動HTTPS、自動アプリケーション更新、およびスケジュール済みバックアップが含まれています。アプリケーションメールは無効になっているため、検証、パスワード忘却、および管理者アクションメッセージは送信できません。レルムはこれらのフローに依存しないように設計する必要があります。
F.A.Q
Keycloakは、PostgreSQLを考慮するとプラン4で€20から始まります。このプランは、アイデンティティサーバー、データベース容量、カスタムドメイン、HTTPS、更新、およびスケジュール済みバックアップを提供します。レルム数、ユーザー数、アクティブセッション数、トークントラフィック、フェデレーション接続、イベントログ、および認証フロー複雑性が、実際の運用マージンを決定します。
PostgreSQLはレルム、ユーザー、グループ、クライアント、ロール、セッション、認証情報、およびサーバー設定を保存します。AvaHostはデータベースコンテナを作成してKeycloakに接続しますが、このサービスは管理対象外です。アイデンティティデータと設定は、変更、移行、テスト、または復旧を計画する際にセキュリティに配慮したシステムとして扱う必要があります。
カスタムアイデンティティホスト名は、DNSが設定された後、自動HTTPS接続が可能です。クライアントリダイレクトアドレス、発行者URL、アプリケーション設定、および外部アイデンティティプロバイダーコールバックは、最終的なホスト名を使用する必要があります。アドレスが変更された後、ログイン、ログアウト、トークンリフレッシュ、アカウントページ、および登録されたすべてのクライアントをテストしてください。
Keycloakは通常、メール検証、パスワード忘却リンク、および管理者がトリガーするアクションメッセージにSMTPを使用します。AvaHostはアプリケーションメールを無効にしているため、これらのワークフローはホストされたレルムからメールを送信できません。管理者はメール検証の要件を避け、制御された手動リカバリープロセスを準備し、ユーザーを登録する前にすべての認証フローをテストする必要があります。
