Keycloakは、アプリケーション向けのログイン、ユーザー管理、権限管理を提供するオープンソースのID・アクセス管理サーバーです。OpenID Connect、OAuth 2.0、SAMLに対応し、B2CとB2Bの顧客向けアプリで認証基盤として利用できます。
クラウド事業者が運用する完成済みサービスではなく、自社でサーバーを配置・運用するself-hostedソフトウェアです。ソフトウェアのライセンス入口は無料ですが、インフラ、データベース、監視、更新といった運用を自社で担います。認証データの場所を決めたい一方、基盤を継続運用できる組織に向いています。
Keycloakでは、realmと呼ばれる管理領域にユーザーやアプリの設定を置きます。利用者がアプリへ入ると、Keycloakのログインページへ移動して認証し、その結果をアプリへ返します。realm内のユーザーは、Keycloakで管理するパスワードを使ってログインできます。
認証方式にはパスキー、パスワード、X.509証明書、段階的に認証を強めるstep-up、復旧コード、TOTP/HOTPがあります。TOTP/HOTPは認証アプリなどで生成するワンタイムパスワードです。すべてを同時に使うのではなく、利用者の種類や操作の重要度に応じて組み合わせます。
Keycloakは、外部のOpenID ConnectまたはSAMLのIDプロバイダー、ソーシャルログインとの仲介を行えます。利用者は外部サービスで本人確認を済ませ、その結果を使って対象アプリへ入ります。
B2Bでは、organizationへIDプロバイダーを関連付け、メンバーの参加とログイン先への移動を構成できます。顧客企業ごとに異なるID基盤を使う場合、どのorganizationをどの接続先へ結び付けるかを管理できます。
SSOとSCIMは同じものではありません。SSOは一度の認証結果を使って複数のアプリへ入る仕組みです。SCIMはユーザー情報をシステム間で作成・更新する仕組みです。KeycloakのOIDC/SAML連携だけでSCIMによる同期まで満たすとは判断せず、必要なら実現方法を別に確認します。
Keycloakでは、realmとclient単位でSSOセッション、アクセストークン、リフレッシュトークン、ログアウトを管理します。clientは、Keycloakを利用するアプリやサービスを表す単位です。
アクセストークンはアプリやAPIへアクセスするための情報を持ち、リフレッシュトークンは新しいアクセストークンを取得するために使います。どの程度ログイン状態を維持するか、どの操作で再認証を求めるか、ログアウト時に何を終了するかを、アプリの要件に合わせて設定します。
Admin Consoleでは、ユーザー、role、mapping、client、各種設定を一か所で管理できます。利用者向けのAccount Consoleもあり、自分のアカウントを管理できます。Admin REST APIからは、realm、ユーザー、client、role、IDプロバイダーを操作できます。
ユーザーはログインする個人、organizationは所属先となる顧客企業などの単位です。realm内でorganizationとメンバーを管理し、1人のメンバーを複数のorganizationへ所属させることもできます。たとえば、同じ担当者が複数の取引先組織へ参加するサービスで、アカウントと所属先を分けて扱えます。
認証とauthorizationも役割が違います。認証は「誰がログインしたか」を確認し、authorizationは「何をしてよいか」を決めます。Keycloakではroleとmappingを管理できますが、実際の業務操作へどのroleを対応させるかはアプリ側の設計です。
B2Cでは個人ユーザーの登録とログインが中心です。B2Bではorganization、メンバー、企業ごとのIDプロバイダー連携が重要になります。また、顧客向けユーザーと従業員向けの社内IDは、対象と運用責任が異なります。同じrealmやユーザー構造へまとめる前に、それぞれの要件を分けて考えます。
管理者はAdmin ConsoleやREST APIを使い、ユーザーの登録、roleの変更、clientやIDプロバイダーの設定を管理できます。利用者はAccount Consoleで自分のアカウントを扱えます。
アカウントを作るだけでなく、所属organizationの追加、roleの変更、認証情報の更新、利用終了時のアクセス停止までを一連の流れとして設計します。管理画面による手作業とAPIによる自動化のどちらを使うかも、変更件数や運用体制に合わせて決めます。
Keycloakは自社でサーバーを配置するため、データの保管場所はKeycloak側で固定されません。どの地域へサーバーと外部データベースを置くかによって決まります。データ保管地域を選べる一方、その構成を維持する責任も利用者側にあります。
利用上限と可用性は、Keycloakを動かす構成と外部データベースの処理能力に左右されます。利用者が増えたときの容量、障害時の復旧、ソフトウェアの更新、監視まで含めて運用計画を作る必要があります。
マネージドサービスのように運用を提供者へ任せる形ではありません。技術チームが認証基盤とデータベースを継続して管理できるかは、機能の豊富さと同じくらい重要な選定条件です。
Keycloak本体はオープンソースで公開され、ソフトウェアライセンスの入口は0米ドルです。ユーザー数に応じたKeycloak本体の利用料ではありません。ただし、self-hostに必要なサーバー、データベース、運用担当者などの費用は利用者が負担します。
| プラン | 課金単位 | 料金 | 主な内容 |
|---|---|---|---|
| included allowance limit | software_license_entry | $0 | Keycloak本体はopen-source identity and access managementとして公開され、self-host運用費は利用者側で負担する。 |
注意
料金情報は2026年8月7日にGLOBAL向けとして確認した内容です。日本専用の円建て料金は確認できていません。表の0米ドルはソフトウェアライセンス入口を示し、インフラや運用費を含みません。
Keycloakは、認証データを自社が選ぶ環境へ置き、OIDC、OAuth 2.0、SAMLを使って複数アプリの認証をまとめたい場合に候補になります。B2Bでorganizationや企業ごとのIDプロバイダー連携が必要な場合にも利用できます。
一方、インフラ運用を提供者へ任せたい場合は、self-hostが方針に合うかを慎重に判断する必要があります。ライセンス料だけで比べず、可用性、データベース容量、監視、更新を含む総運用コストで検討します。
Q.Keycloakは無料で使える?
A.Keycloak本体はオープンソースで、ソフトウェアライセンス入口は0米ドルです。self-hostに必要なサーバー、データベース、監視、更新などの費用は別に発生します。
Q.クラウド型の認証サービス?
A.Keycloak自体は、自社でサーバーを配置・運用するself-hostedソフトウェアです。データの場所や可用性は自社の構成で決まります。
Q.B2Bの顧客企業を管理できる?
A.realm内でorganizationとメンバーを管理でき、1人を複数organizationへ所属させられます。organizationへ外部IDプロバイダーを関連付けることもできます。
確認日: 2026-08-07(記載の各公式ページで確認。価格などは変わることがあります)
Keycloak