SHOEISHA iD

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

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

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

OpenAMのインストール

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


  • このエントリーをはてなブックマークに追加

 OpenAMは、シングルサインオン(以下SSO)を実現するオープンソースソフトウェア(以下OSS)です。旧Sun Microsystems社により開発された商用製品がベースとなっているため、高品質で多機能です。全世界で多くの導入実績があり、安定性と信頼性の高さが証明されています。本連載では、OpenAMとSSOに関する技術について解説します。また実際にOpenAMをインストールし、社内アプリケーションやクラウドサービスに対してSSOしてみます。

  • このエントリーをはてなブックマークに追加

はじめに

 第2回は、OpenAMのインストール方法について説明します。OpenAMはJavaで実装されたWebアプリケーションであるため、Tomcatなどのアプリケーションサーバ(サーブレットコンテナ)が必要となります。

対象読者

  • SSOについてより理解したい方
  • SSO製品の導入を検討している方
  • OpenAMについてより理解したい方
  • OpenAMを用いてSSO環境を構築したい方

必要な環境

 OpenAMのインストールに必要なサーバスペックについては、以下が目安となります。

  • Windows、RHEL、Solaris、UbuntuなどのOS
  • メモリ : 1.0GB以上
  • ディスク容量 : 2GB以上
  • JDK 1.6.*
  • TomcatなどのJava EEコンテナ

 詳細についてはForgeRock社のサイトを参照ください。

 インストールに使用した環境は次のとおりです。

  • CentOS 6.1 32bit版
  • メモリ : 1.5GB
  • CPU : Intel Core 2 CPU E7400 @ 2.80GHz × 2

OpenAMのインストール

 OpenAMのインストールは簡単です。基本的にはサーブレットコンテナにwarファイルをデプロイするだけです。ただし、Javaのヒープサイズやホストの名前解決の設定などが必要です。今回はCentOSを使って説明しますが、Windowsなどでも同様の手順になります。

OSのセットアップ

 まずはOpenAMをインストールするために必要なOSをセットアップします。※以降の作業は全てrootユーザで行っています。

 OpenAMサーバにアクセスするには、OpenAMサーバのホスト名をFQDN(注1)で名前解決できなければなりません。ここでは OpenAMサーバのFQDNを「openam.example.co.jp」とします。

$ vi /etc/sysconfig/network

HOSTNAME=openam.example.co.jp 

 今回は、DNSでの名前解決はせず、hostsファイルに定義を追加します(IPアドレス部分は環境に合わせて変更してください)。

$ vi /etc/hosts

192.168.1.11 openam.example.co.jp

 動作検証が目的であるため、ファイアウォールやSELinuxは無効にします。CentOSの端末で以下を実行します。

$ service iptables stop
$ chkconfig iptables off

$ vi /etc/sysconfig/selinux

#SELINUX=enforcing
#↓disabledに変更
SELINUX=disabled

 設定を反映させるため、OSを再起動します。

注1 FQDN

 ホスト名、ドメイン名(サブドメイン名)などすべてを省略せずに指定した識別子のこと。「openam.example.co.jp」はホスト名「openam」とドメイン名「example.co.jp」をすべて揃えたFQDNとなります。

JDKのインストール

 Oracle社のサイトからJDKをダウンロードし、インストールします。

$ wget http://download.oracle.com/otn-pub/java/jdk/6u37-b06/jdk-6u37-linux-i586-rpm.bin

$ sh ./jdk-6u37-linux-i586-rpm.bin

Tomcatのインストールと設定

 yumコマンドにより、tomcat6(※2)をインストールします。インストールが完了したら環境変数JAVA_HOMEとJAVA_OPTSをセットします。OpenAMの起動には、1GBのJavaヒープと256MBのpermanent領域が必要です。

$ yum install tomcat6

$ export JAVA_HOME=/usr/java/default/
$ export JAVA_OPTS="-Xmx1024m -XX:MaxPermSize=256m"

OpenAMのデプロイとTomcatの起動

 OpenAMはForgeRock社のサイトからをwarファイルをダウンロードできます。ダウンロードしたら、/usr/share/tomcat6/webapps/以下にコピーします。OpenAMのデプロイが完了したら、Tomcatを起動します。

$ wget http://download.forgerock.org/downloads/openam/openam10/10.0.0/openam_10.0.0.war
$ mv openam_10.0.0.war /usr/share/tomcat6/webapps/openam.war 

$ service tomcat6 start 

注2

 最新のTomcatにOpenAMをデプロイした場合、Tomcat停止時に以下のように「致命的エラー」がコンソールとログに出力されます。これはTomcat 6.0.24から追加されたメモリリーク検知機能によるものです。SEVEREとなっていますが、プログラム停止とともにメモリは解放されるので問題ありません。

SEVERE: A web application appears to have started a thread named [Session Monitor] but has failed to stop it. This is very likely to create a memory leak.
2012/11/11 23:37:33 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads

会員登録無料すると、続きをお読みいただけます

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

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

メールバックナンバー

次のページ
OpenAMの初期設定

修正履歴

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

  • このエントリーをはてなブックマークに追加
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/6319 2014/10/05 12:19

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング