SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

OpenAMで始めるシングルサインオン

社内アプリケーションへのシングルサインオン ~ Liferayとの連携

OpenAMで始めるシングルサインオン(3)


SSOの動作検証

 それでは実際にSSOの動作検証をしてみましょう。

管理者ユーザでSSO

 まずは管理者ユーザでSSOの動作検証をします。Liferayのトップページにアクセスし、「Sign in」ボタンをクリックします。

図15:Liferayのサインアップへのリンク
図15:Liferayのサインアップへのリンク

 SSO設定前はLiferayのログインページが表示されますが、設定後はOpenAMのログインページへとリダイレクトされます。

図16:OpenAMのログイン画面(管理者ユーザでの初回ログイン)
図16:OpenAMのログイン画面(管理者ユーザでの初回ログイン)

 ここで先ほど作成したLiferayの管理者ユーザである「test」でログインすると、Liferayのトップページへと遷移します。

図17:Liferayへ管理ユーザでSSO
図17:Liferayへ管理ユーザでSSO

 以上で管理者ユーザのSSOが確認できました。

管理ユーザ以外でSSO

 次に管理者ユーザ以外でSSOをしてみます。前述したようにLiferayのデフォルトのSSO設定では、OpenAMに存在するユーザがLiferayに存在しない場合、そのユーザを動的に作成してSSOできるようになっています。

 そこでOpenAMにユーザを追加し、そのユーザがLiferayにSSOできることとLiferayに登録されることを確認したいと思います。先ほど同様にamadminでOpenAMにログインし、適当なユーザを作成してください。

図18:OpenAMのユーザー編集画面
図18:OpenAMのユーザー編集画面

作成が完了したら、いったんOpenAMからログアウトします。

その後、Liferayのログイン画面にアクセスすると、OpenAMのログイン画面が表示されるので先ほど作成したユーザでログインしてください。

図19:OpenAMのログイン画面(一般ユーザでの初回ログイン)
図19:OpenAMのログイン画面(一般ユーザでの初回ログイン)

 正常にログイン(SSO)できると、以下のライセンス確認画面が表示されます。

図20:ライセンス確認画面(一般ユーザで初回ログイン)
図20:ライセンス確認画面(一般ユーザで初回ログイン)

 ログアウト後、管理者ユーザでLiferayにログインしなおしてユーザ一覧を表示すると、このユーザがLiferayに登録されたことが分かります。

図21:ユーザ一覧画面
図21:ユーザ一覧画面

まとめ

 今回はSSOを簡単に実践するための第一歩としてLiferayを使用しました。これで認証の役割をOpenAMへ委譲することができましたが、「複数のシステムに1回でログインする」というSSOの基本的な動作は確認できていません。

 次回はSSO対象のシステムとしてクラウドサービスを追加して、「複数のシステムに1回でログインする」ことができるようにします。SAMLを使用したクラウドサービスへのSSOの仕組みについても簡単に説明します。

参考資料

  • ForgeRock Community 「OpenAM Project
  • OpenAM』 Indira Thangasamy 著、Packt Publishing、2011年1月
  • Liferay コミュニティー「Quick Start
修正履歴

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
OpenAMで始めるシングルサインオン連載記事一覧

もっと読む

この記事の著者

田村 広平(タムラ コウヘイ)

OpenAMコミッタ。1978年長野県生まれ。OSS(特にOpenAM)の研究開発、テクニカルサポートに従事。E-Mail  : ktamura.biz.80@gmail.comTwitter : @tamura__246GitHub : https://github.com/k-tamuraブロ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/6320 2013/06/02 15:27

おすすめ

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー