Keycloak

Keycloak とは?

Keycloak は、オープンソースのアイデンティティおよびアクセス管理ソフトウェアです。多くのアプリケーションに、多要素認証付きの共通サインインを提供し、カスタムアプリケーションに標準準拠のログインを加えるために広く使われています。

エンジニアに相談する ナレッジベース
1つのアカウントがIDプロバイダーにサインインし、それを経由してメール、業務アプリ、社内ツールを開く様子を示した図

どういうものか

Keycloak は Red Hat で始まり、現在は Cloud Native Computing Foundation のプロジェクトです。自社のサーバー上で、コンテナとして、または Kubernetes 上で動き、OpenID Connect、OAuth 2.0、SAML に対応しています。これらの標準を使うアプリケーションは、サインインを Keycloak に任せて、確認済みの本人情報を受け取るため、自分でパスワードを扱うことはありません。

シングルサインオンが重要な理由

シングルサインオンでは、各人が、接続されたすべてのアプリケーションで 1 つのアカウントを使います。誰かが退職したときは、そのアカウントを無効にすれば、あらゆる場所でアクセスがなくなります。多要素サインインは 1 か所で必須にでき、スタッフが使い回したり書き留めたりするパスワードも減ります。

主な構成要素

  • レルム:レルムは、ユーザー、設定、アプリケーションが独立した 1 つのまとまりです。1 つのインストールに、スタッフ用と顧客用など、複数を持てます。
  • クライアント:Keycloak 経由でユーザーをサインインさせる各アプリケーションは、クライアントとして登録され、それぞれ独自の設定を持ちます。
  • アイデンティティブローカリング:Keycloak はサインインを別のプロバイダーに任せ、その結果を信頼できるため、スタッフは Microsoft 365 アカウントでサインインできます。
  • ユーザーフェデレーション:Keycloak は、すべてのアカウントの 2 つ目のコピーを持つ代わりに、既存の LDAP ディレクトリや Microsoft Active Directory からユーザーを読み取れます。

Keycloak と Authentik

Authentik も同じ領域をカバーします。Keycloak は古いプロジェクトで、開発者が自社のソフトウェアの中にログインを組み込みたいときの、定番の選択肢です。Authentik は、Web インターフェースでのサインイン手順の設計に重きを置き、ログイン機能を持たないアプリケーションの前にログインを置くプロキシアウトポストを備えています。Keycloak もそうしたアプリケーションを保護できますが、通常は前段に別のプロキシを置きます。

KawaConnectとシングルサインオンの関わり

当社は業務向けカスタムソフトウェアを構築しており、ログインは、ゼロから書くのではなく、公開された標準に従うべき部分です。Microsoft 365 でのアイデンティティに関する業務は、Entra ID アカウント、多要素認証、条件付きアクセスを対象としています。また、セルフホスト型の Linux、Docker、Kubernetes サービスも運用しており、アイデンティティプロバイダーを使えば、社内ツールでも他と同じ Microsoft アカウントを使えます。

関連サービス

Kubernetesコンサルティング

セルフホスト型サービスとその設定のためのクラスター。

Microsoft 365

スタッフアカウント向けの Entra ID、MFA、条件付きアクセス。

ネットワークセキュリティ

リモートアクセス、MFA、セグメンテーション。常に誰かが見守ります。

詳しく見る

自社のソフトウェアにログインを追加しますか?

アプリケーションが何をするか、誰がサインインするかをお知らせください。標準準拠のサインインがどう収まるかを説明します。

相談を始める