サンプルアプリケーションでKeycloakのSSO動作を確認してみよう:Keycloak超入門(2)(1/3 ページ)
本連載では、近年注目されている認証プロトコル「OpenID Connect」をサポートするオープンソースのシングルサインオン(SSO)ソフトウェア「Keycloak」の活用方法を解説していきます。今回は、サンプルアプリケーションを使って、KeycloakによるSSOの動作を確認してみます。
連載第2回目となる今回は「Keycloak」サーバを起動して、Keycloakが提供するサンプルアプリケーションを実行し、シングルサインオン(SSO)の動作を確認してみます。確認に利用したKeycloak、サンプルアプリケーションのバージョンは「3.2.0.Final」です。
今回はCent OS 7.2 64bitを使用しますが、他のLinux系OSやWindows OS上でも実行可能です。また、Keycloakのサンプルアプリケーションをビルド、デプロイするには「Java Development Kit(JDK)」および「Maven」が必要になりますので、適宜インストールを行ってください。
Keycloakの使用方法
まずは、Keycloakを起動し、「Administration Console」(Keycloakの設定を行うWeb GUI)へアクセスするまでの手順を説明します。
Keycloakの起動
Keycloakの本体は、ダウンロードサイト(http://www.keycloak.org/downloads.html)から「Standalone server distribution」を入手します。本稿ではバージョン「3.2.0.Final」を使用しています。
ダウンロードしたファイルには、Keycloakアプリケーションの他、Keycloakを実行するためのアプリケーション(AP)サーバ「Wildfly」と、デフォルトの設定ファイルが含まれているので、ダウンロードしたものをそのまま実行することが可能です。ダウンロードしたファイルを解凍後、Keycloakのディレクトリに移動して「./bin/standalone.sh」を実行することで、Keycloakサーバが起動します。
Keycloakサーバ起動後は「http://localhost:8080/auth」からアクセスできるようになります。なお、初回起動時には初期管理ユーザーを作成する必要があります。適当なユーザーを作成してください(画面1)。
【メモ】リモートマシンからKeycloakへアクセスする場合
デフォルト設定でKeycloakを起動した場合は、ローカルの「http://localhost:8080/auth」からのみアクセスすることができます。外部のリモートマシンからはアクセスできません。Keycloakを起動したサーバ以外のマシンからWebブラウザでリモートアクセスする場合は、「bin/standalone.sh」を実行する際、以下のように「-b」オプションを付けて起動する必要があります。
$ ./bin/standalone.sh -b 0.0.0.0
また、初期管理ユーザーの作成画面も「http://localhost:8080/auth」でアクセスした場合にのみ表示されます。KeycloakをインストールしたサーバにWebブラウザ環境がない場合には、「bin/add-user-keycloak.sh」スクリプトで初期管理ユーザーを追加することができます。
$ ./bin/add-user-keycloak.sh --user admin --password password
Keycloakへのログイン
初期ユーザー登録後、「Administration Console」をクリックすると、ログイン画面が表示されます。ここで、初回起動時に作成した初期ユーザーのユーザー名とパスワードを入力すると、Keycloakにログインすることができます(画面2)。
これでKeycloakサーバの起動が確認できました。次はサンプルアプリケーションの準備を行います。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- なぜ「シングルサインオン」が必要なのか?
企業でのWebサービスの実現が具体的になるにつれ、パスワード/IDマネジメントが重視されるようになり、「シングル・サインオン」がますます注目を集めている。この連載では、シングル・サインオンの実践ステップなど具体的な考え方を紹介する。また、メタディレクトリやLDAPなど「ディレクトリ統合」をキーワードとしてシングル・サインオンを実現するための技術を分かりやすく解説する。(編集部) - 第1回 もはや企業のID管理で避けては通れない「IDaaS」とは?
これまで社内設置が当たり前だったアイデンティティ(ID)管理/認証システム。でも「クラウド」「モバイル」に代表される激烈な変化に対応できる、と本当に思っていますか? ID管理/シングルサインオンの新たな選択肢「IDaaS」について解説する連載開始! - 強力なSSOを実現するXML認証・認可サービス(SAML)
- OpenIG、OpenDJと連携したOpenAMの新機能
今回は、OpenAMの姉妹製品で既存アプリケーションを改修せずにシングルサインオンを可能にする「OpenIG」と、OpenAMのデフォルトデータストアである「OpenDJ」について解説します。