Interstage Application Server シングル・サインオン運用ガイド |
目次
索引
![]() ![]() |
第5章 アプリケーションの開発 | > 5.1 Javaアプリケーションの開発 | > 5.1.5 サンプルコード |
本サンプルは、クライアントからすでに認証済みであることを証明する認証情報を受け取り、認証した利用者の情報を表示するサーブレットアプリケーションです。本サンプルを動作させるためにはサーブレットと連携するWebサーバを業務サーバとして構築しておく必要があります。
URL |
アプリケーション |
保護リソース登録 |
http(s)://業務サーバ名:ポート番号/jaassample/SampleServlet |
クライアントから認証情報を受け取るサーブレットアプリケーション |
必要 |
サンプルコードは以下のディレクトリに格納されています。以降、サンプルディレクトリと呼びます。
Interstageのインストールディレクトリ:C:\Interstage
C:\Interstage\F3FMsso\ssoatzag\sample\javaapi
/opt/FJSVssoaz/sample/javaapi
サンプルコードの実行に必要なファイルは以下のとおりです。
ファイル名 |
説明 |
jaassample.war |
warファイル |
webapp/jaassample/WEB-INF/isssojaaslogin.conf |
サーブレットログイン構成ファイル |
webapp/jaassample/WEB-INF/web.xml |
Webアプリケーション環境定義ファイル(Deployment Descriptor) |
SampleServlet.java |
サーブレットjavaソースファイル |
IJServerの運用ユーザが、業務サーバの定義に対する読み込みができるように、以下の設定をしてください。
注1)Interstage HTTP Serverの環境定義ファイルの詳細については、“Webサーバ運用ガイド(Interstage HTTP Server編)”−“環境設定”−“環境定義ファイル”を参照してください。
注2)詳細は“Webサーバの実効ユーザを変更する場合の注意事項”を参照してください。
Servletコンテナへサーブレットアプリケーションを配備します。配備にはInterstage管理コンソールを使用します。ここでは、IJServerワークユニット“IJServer”に配備する場合を例に説明します。IJServerの詳細については、“J2EE ユーザーズガイド”の“J2EEアプリケーションが運用される環境(IJServer)”を参照してください。
IJServerワークユニット“IJServer”が作成されていない場合には、“IJServer”という名前の以下のいずれかのタイプのIJServerを新規作成してください。
サーブレットアプリケーションを配備するには、以下の手順で行います。
サンプルアプリケーションの配備されるディレクトリは、以下のディレクトリです。
Interstageのインストールディレクトリ:C:\Interstage
C:\Interstage\J2EE\var\deployment\ijserver\IJServer\apps\jaassample.war |
/opt/FJSVj2ee/var/deployment/ijserver/IJServer/apps/jaassample.war |
Interstage管理コンソールを使用して、[システム] > [ワークユニット] > [IJServer] > [環境設定]タブを選択してください。[ワークユニット]の設定で、以下に示すクラスパスとJavaVMオプションを設定してください。またサーブレットが使用するJDKのバージョンを変更するためにはJavaバージョンのプルダウンを選択してください。設定が終わったら、更新ボタンをクリックして変更を反映させてください。
Interstageのインストールディレクトリ:C:\Interstage
クラスパス
C:\Interstage\F3FMsso\ssoatzag\lib\isssomod14.jar |
JavaVMオプション
-Djava.security.auth.login.config=C:\Interstage\J2EE\var\deployment\ijserver\IJServer\apps\jaassample.war\WEB-INF\isssojaaslogin.conf -Djavax.net.ssl.trustStore=C:\Interstage\etc\security\env\keystore\.keystore |
クラスパス
/opt/FJSVssoaz/lib/isssomod14.jar |
JavaVMオプション
-Djava.security.auth.login.config=/opt/FJSVj2ee/var/deployment/ijserver/IJServer/apps/jaassample.war/WEB-INF/isssojaaslogin.conf -Djavax.net.ssl.trustStore=/etc/opt/FJSVisscs/security/env/keystore/.keystore |
業務サーバとして構築したWebサーバのポート番号が80番以外の場合には、(2)で配備されたサーブレットアプリケーションに含まれているログイン構成ファイルisssojaaslogin.confのserverportの値をテキストエディタで編集する必要があります。
ログイン構成ファイルがデフォルトで配備されるパス名
Interstageのインストールディレクトリ:C:\Interstage
C:\Interstage\J2EE\var\deployment\ijserver\IJServer\apps\jaassample.war\WEB-INF\isssojaaslogin.conf |
/opt/FJSVj2ee/var/deployment/ijserver/IJServer/apps/jaassample.war/WEB-INF/isssojaaslogin.conf |
業務サーバがポート番号81で動作している場合のログイン構成ファイルの例です。
エントリ“com.fujitsu.interstage.sso”はクライアントから認証情報を受け取るサーブレットアプリケーションで使用します。
/** * sample login config file */ com.fujitsu.interstage.sso{ com.fujitsu.interstage.sso.auth.module.ISCredentialLoginModule Required serverport="81" <− ここを編集する ; }; |
認証サーバのサイト証明書、およびその証明書の発行者である認証局証明書を取得し、業務サーバのInterstage証明書環境に登録します。なお、Interstage Traffic Directorなどのロードバランサを使用する場合には、サイト証明書はロードバランサのFQDNで発行したものを使用します。
サイト証明書、または認証局証明書がUTF-8形式の場合、JDK1.4を使用してください。
SSO管理者は、サーブレットアプリケーションのURLを、保護リソースとしてSSOリポジトリへ登録します。
サーブレットアプリケーションのURL
http(s)://業務サーバ名:ポート番号/jaassample/SampleServlet |
登録する保護リソース
業務サーバ名:ポート番号/jaassample/SampleServlet |
登録する保護リソース:www.fujitsu.com:80/jaassample/SampleServlet
保護リソースを利用することができるロール名:Admin
保護リソースを登録する前に、業務サーバのサイト定義“www.fujitsu.com:80”、およびロール定義がSSOリポジトリに登録されている必要があります。業務サーバ管理者は、SSO管理者に必要な情報が登録されているか確認し、登録されていない場合は、登録を依頼してください。
業務サーバ管理者は(6)で登録した保護リソースの情報を業務サーバに格納します。Interstage管理コンソールを使用して、[システム] > [セキュリティ] > [シングル・サインオン] > [業務システム] > [業務システム名] > [アクセス制御情報の更新]タブの[更新]ボタンをクリックしてください。Interstage管理コンソールの定義詳細については、Interstage管理コンソールのヘルプを参照してください。アクセス制御情報の更新については“ロール定義の変更、追加”、および“保護リソースの変更”を参照してください。
業務サーバ管理者は、Interstage管理コンソールを使用して、[システム] > [セキュリティ] > [シングル・サインオン] > [業務システム] > [業務システム名] > [環境設定]タブの[詳細設定[表示]]をクリックし、[Webアプリケーションとの連携]の[ユーザ情報の通知]の設定を“通知する”にして[適用]ボタンをクリックしてください。
セションの管理を行う場合、業務サーバ管理者は、Interstage管理コンソールを使用して、[システム] > [セキュリティ] > [シングル・サインオン] > [業務システム] > [業務システム名] > [環境設定]タブの[詳細設定[表示]]をクリックし、[シングル・サインオンJavaAPI]の[シングル・サインオンJavaAPIの使用]の設定を“使用する”にして[適用]ボタンをクリックしてください。
業務サーバを起動します。Webサーバの起動については、“業務サーバの起動”を参照してください。
Interstage管理コンソールを使用して、[システム] > [ワークユニット] > [IJServer] > [操作]タブを選択します。[起動]ボタンをクリックしてワークユニットを起動させてください。
Webブラウザで業務サーバ上の以下のURLを指定します。
業務サーバが“www.fujitsu.com:80”で動作している場合
http://www.fujitsu.com:80/jaassample/ |
Webブラウザに、“SSO Authentication”が表示されます。
“SSO Authentication”をクリックすると、証明書選択画面やフォーム認証ページまたは基本認証画面が表示されますので、(6)で設定した保護リソースを利用できるロールに属するユーザの証明書を選択するか、ユーザID/パスワードを入力してください。認証に成功すると、Webブラウザ画面に認証したユーザの認証情報が表示されます。
以下に実行例を示します。
ロール“Admin”に属する利用者“tarou”で認証が成功した場合
com.fujitsu.interstage.sso.auth.ISUserPrincipal tarou javax.security.auth.x500.X500Principal CN=Fujitsu Tarou,OU=User,OU=interstage,O=fujitsu,DC=com com.fujitsu.interstage.sso.auth.ISRolePrincipal Admin |
Webブラウザ画面に「No cookie information」が表示される場合、業務サーバのシングル・サインオンJavaAPIの設定が変更されていません。実行手順を確認し、設定を変更してください。
目次
索引
![]() ![]() |