Interstage Application Server シングル・サインオン運用ガイド
目次 索引 前ページ次ページ

第6章 アプリケーションの開発> 6.1 Javaアプリケーションの開発> 6.1.2 プログラムの開発

6.1.2.4 ユーザ情報の取得

 JAAS認証に成功した場合、復帰値のSubjectオブジェクトに対して以下のオブジェクトが関連付けられます。

 PrincipalオブジェクトはSubjectオブジェクトの以下のメソッドで取得することができます。

 この2つのメソッドの違いはgetPrivateCredentialsメソッドと同様です。関連付けられるオブジェクトのクラスを以下に示します。

クラス名

説明

com.fujitsu.interstage.sso.auth.ISUserPrincipal

認証された利用者のユーザIDを表します。

com.fujitsu.interstage.sso.auth.ISRolePrincipal

利用者が属するロール名を表します。利用者がロールセットに属する場合、ロールセットに含まれるロールがそれぞれISRolePrincipalのオブジェクトとして関連付けられます。このオブジェクトは利用者がロールに属さない場合は設定されません。

javax.security.auth.x500.X500Principal

利用者のSSOリポジトリ内の一意の識別名(DN)を表します。
java.security.PrincipalインタフェースのgetNameメソッドを使用する場合には以下に注意して開発してください。

・DNの区切り文字(カンマ)の直後に半角スペースが1文字挿入されません。

例)getNameメソッドで返される値

CN=Fujitsu Tarou,OU=User,OU=interstage,O=fujitsu,DC=com

 コードを以下に示します。

Set principals = subject.getPrincipals();
iterator = principals.iterator();
while (iterator.hasNext()) {
  Principal principal = (Principal)iterator.next();
  System.out.println("Principal=" + principal.getClass().getName());
  System.out.println(principal.getName());
}

■通知されるユーザ情報について

 業務サーバの定義を使用して認証先の認証サーバを指定する場合、ISAuthorizationCredentialオブジェクト内に保持する以下の情報は、Interstage管理コンソールで設定する[ユーザ情報の通知]の設定を“通知する”にした場合に通知されます。

 [ユーザ情報の通知]については、Interstage管理コンソールを使用して、[システム] > [セキュリティ] > [シングル・サインオン] > [業務システム] > [業務システム名] > [環境設定]タブ > [詳細設定[表示]]をクリックし、[Webアプリケーションとの連携]の[ユーザ情報の通知]を確認してください。この設定の詳細については、Interstage管理コンソールのヘルプを参照してください。

 [ユーザ情報の通知]の設定の反映には、IJServerの再起動が必要です。IJServerを再起動してください。ログイン構成については、“ログイン構成ファイルの作成”を参照してください。

■再認証の間隔が無期限のユーザ情報の通知について

 ISAuthorizationCredentialオブジェクトのgetExpirationメソッドを使用して再認証の間隔を取得できますが、再認証の間隔が無期限の場合には、getExpirationで取得される時刻とgetAuthTimeメソッドで取得される時刻は同じ値になります。


目次 索引 前ページ次ページ

Copyright 2007 FUJITSU LIMITED