Interstage Application Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第1部 J2EE共通編> 第5章 J2EEアプリケーションのセキュリティ> 5.1 セキュリティ機能

5.1.6 run-as security機能

 run-as security機能は、EJBアプリケーションに認証情報を指定できる機能です。

 通常のEJBアプリケーションで使用される認証情報(セキュリティロール、ユーザID、パスワード)はクライアント(J2EEアプリケーションクライアント、Webアプリケーション)で認証された情報です。しかし、run-as security機能を使用することによってEJBアプリケーションで使用する認証情報を変更することが可能となります。
 この機能はMessage-driven Beanから以下のようなセキュリティ機能が使用されたEJBアプリケーションにアクセスする場合に有効な機能です。


 Message-driven Beanは通常クライアントから直接アクセスされることがないため、認証情報を持ちません。このため、上記のようなEJBアプリケーションにアクセスしようとした場合には、必ずセキュリティチェックされてエラーとなります。このような場合にrun-as security機能を使用してMessage-driven Beanに認証情報を指定することによって、アクセス制御されたEJBアプリケーションへMessage-driven Beanからアクセス可能となります。

 run-as security機能を使用するには以下の設定が必要です。

■deployment descriptorの設定

 run-as security機能の設定は、deployment descriptorで行います。security-identity(セキュリティアイデンティティ)のrun-asタグにセキュリティロール名を設定する必要があります。この設定をすることにより、EJBアプリケーションは設定されたセキュリティロールで動作することになります。
 deployment descriptorへの設定、および変更は、ApworksまたはInterstage管理コンソールによって行います。

[指定例]

 run-as securityのdeployment descriptorへの指定例を以下に示します。以下の例ではEJBアプリケーションに“Admin”というセキュリティロールを設定しています。

・・・
  <enterprise-beans>
    <security-identity>
      <run-as>
        <role-name>Admin</role-name>
      </run-as>
    </security-identity>
  </enterprise-beans>
・・・

■ユーザID・パスワードの設定

 run-asタグに指定したセキュリティロール名に対応するユーザID・パスワードを、Interstage管理コンソールで指定します。以下のような場合には起動時に警告メッセージEJB1078が出力されます。警告が発生した場合、メソッドパーミッション機能を使用したEJBアプリケーションを呼び出した場合には承認エラーとなります。

■ディレクトリサービスの設定

 詳細については、“ディレクトリサービスの設定”を参照してください。


 run-as security機能を使用する場合は、以下に注意してください。

 当機能は、IJServer外からだけ呼び出される、EJBアプリケーションだけで使用してください。
 IJServerに配備されたEJBアプリケーションから、呼び出されるEJBアプリケーションで使用した場合、以下の動作に不具合が生じる可能性があります。


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

All Rights Reserved, Copyright(C) 富士通株式会社 2005