Cosminexus 機能解説
今までの業務システムのWeb化では,従来の業務システムが持っていたユーザ認証機構をWebのサービスから独自のインタフェースで呼び出していました。また,最初からJ2EE技術で構築されるWeb業務サービスも,各社のアプリケーションサーバが提供する独自のユーザ認証機構を使って構築されてきました。これらのインタフェースの違いは,サービスを統合する場合の大きな障害になっていました。しかし,Javaの標準ユーザ認証の仕様としてJAAS(Java Authentication and Authorization Service) 1.0が決まり,現在ではJ2EE技術で構築されるWeb業務サービスのユーザ認証の標準となっています。
JAASでは,アプリケーションが認証を要求する側のインタフェース(API:アプリケーションプログラミングインタフェース)と,その要求を受け認証処理をする側のインタフェース(SPI:サービスプロバイダインタフェース)を規定しています。認証処理をする側のモジュールをログインモジュールといいます。APIとSPIの関係を次の図に示します。
図13-4 APIとSPIの関係
Cosminexusでは,標準でパスワード認証の機能を持つCosminexus標準ログインモジュールを提供しています。このCosminexus標準ログインモジュールを利用して,JAASのAPIを使用するJSP/サーブレットで作成されたJ2EEアプリケーションのユーザ管理ができます。
Cosminexus標準ログインモジュールを使用すれば,アプリケーション開発者は,独自に認証モジュールを開発する必要はありません。また,モジュールはスタック可能なので,Cosminexus標準ログインモジュールと連携する拡張認証モジュールを容易に追加できます。さらに,完全に独自認証機能を必要とするアプリケーションでは,容易にCosminexus標準ログインモジュールを独自認証モジュールに置き換えて使用できます。これによって,JAASを使用してユーザ認証をしているアプリケーションプログラムを簡単にCosminexusで統合できるようになります。
これを,JAAS対応ユーザ管理と呼びます。JAAS対応ユーザ管理の概要を次の図に示します。なお,図中のユーザ情報リポジトリとは,認証処理に必要なユーザ情報が格納されているリポジトリです。
図13-5 JAAS対応ユーザ管理の概要
統合ユーザ管理フレームワークに従って,JAAS対応ユーザ管理を使用すると,ある業務サービスで認証されたユーザを,別の業務サービスのユーザにマッピングして認証要求する,ユーザマッピングの機能を利用できます。また,独自のユーザ情報リポジトリを利用する場合でも,カスタムログインモジュールを作成すれば,その業務サービスも含めたシングルサインオンが実現できます。ユーザマッピングによるシングルサインオンの概要を次の図に示します。なお,図中のシングルサインオン情報リポジトリとは,シングルサインオンに必要なマッピング情報が格納されているリポジトリです。
図13-6 ユーザマッピング機能の概要
Cosminexus標準ログインモジュールは,パッケージjavax.security.auth.spiに含まれるLoginModuleインタフェースの実装クラスです。実現する認証方法に応じて使い分けられます。
Cosminexus標準ログインモジュールの特徴を次に示します。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.