セキュリティー

以下の情報は、WebSphere® Application Server のセキュリティーに関する概要となります。

IBM® WebSphere Application Server は、重要な Java™ 2 Platform, Enterprise Edition (J2EE) リソースおよび管理リソースを保護するためのセキュリティーのインフラストラクチャーおよびメカニズムを提供します。また、以下のような、企業のエンドツーエンド・セキュリティー要件に対応しています。
  • 認証
  • リソース・アクセス制御
  • データ保全性
  • 機密性
  • プライバシー
  • セキュア・インターオペラビリティー
IBM WebSphere Application Server のセキュリティーは業界標準に基づき、オープン・アーキテクチャーを採用しており、以下を含むエンタープライズ情報システム (EIS) とのセキュアな接続およびインターオペラビリティーを確保します。
  • Database 2 (DB2®)
  • CICS®
  • [AIX Solaris HP-UX Linux Windows][z/OS]情報管理システム (IMS™)
  • MQ Series
  • Lotus® Domino®
  • IBM Directory
WebSphere Application Server では、以下のセキュリティー・プロバイダーもサポートされています。
  • [z/OS]IBM z/OS® Security Server Resource Access Control Facility (RACF®) を含む、 すべての System Authorization Facility (SAF) 準拠セキュリティー・サーバー
  • WebSEAL を含むリバース・セキュア・プロキシー・サーバー

[z/OS]ID 管理:

[z/OS]WebSphere Application Server バージョン 7.x 以前のリリースの場合:

[z/OS]SAF セキュリティー機能を利用するには、ユーザーが z/OS ベースのユーザー ID を使用して識別される必要があります。J2EE ID をプラットフォーム・ベースのユーザー ID (この場合、RACF ユーザー ID) にマップするためのプリンシパル・マッピング・モジュールを使用することができます。 SAF EJBROLE チェックを実行するために、LDAP ユーザー ID から RACF ユーザー ID にプリンシパル・マッピングを作成する必要があります。 つまり、LDAP レジストリー内の構成ユーザーから z/OS ユーザー ID を派生させるために、マッピング・ログイン・モジュールが使用可能である必要があります。 (SMF 監査 (SAF を使用した) を使用して、これらの変更をトラッキングすることができます。)

[z/OS]WebSphere Application Server バージョン 8.0 以降の新機能:

[z/OS]分散 ID マッピングに関して、2 つの選択肢から選択できるようになりました。
  • JAAS マッピング・モジュールを使用して、J2EE ID を SAF ID にマップします。
  • SAF の分散 ID マッピング機能を使用します。これには、特定バージョンの SAF が必要です。 WebSphere で JAAS マッピング・モジュールを構成しないでください。その場合、ユーザーは、分散ユーザー ID (LDAP レジストリーのユーザー ID など) を使用して識別されます。 このマッピングは、z/OS セキュリティー管理者が RACMAP SAF プロファイルを使用して処理します。 このオプションによって、分散ユーザー ID と SAF ID の両方を監査レコードに記録できるようにすることで、SMF 監査が拡張されます。 詳しくは、SAF を使用した分散 ID マッピングを参照してください。

業界標準ベース

IBM WebSphere Application Server では、 Web リソース、Web サービス・エンドポイント、および J2EE 仕様に準拠する Enterprise JavaBeans を保護するため、ポリシー・ベースおよび許可ベースの統合モデルを提供しています。 具体的には、WebSphere Application Server は Java EE 6 仕様に準拠し、J2EE Compatibility Test Suite に合格しています。

WebSphere Application Server のセキュリティーは、オペレーティング・システム・プラットフォーム、Java 仮想マシン (JVM)、および Java 2 セキュリティーの上に構築される階層化アーキテクチャーです。 このセキュリティー・モデルは、以下を含む豊富なセキュリティー・テクノロジーを駆使します。
  • Java 2 セキュリティー・モデル。 システム・リソースに対し、ポリシーおよび許可をベースにした、きめの細かいアクセス制御を提供します。
  • Common Secure Interoperability Version 2 (CSIv2) セキュリティー・プロトコル。Secure Authentication Services (SAS) セキュリティー・プロトコルもサポートされています。どちらのプロトコルも、以前の WebSphere Application Server のリリースでサポートされています。 CSIv2 は J2EE 1.4 仕様の必須要素であり、さまざまなベンダーのアプリケーション・サーバー間のインターオペラビリティー、 およびエンタープライズ CORBA サービスとのインターオペラビリティーには不可欠です。
    [AIX Solaris HP-UX Linux Windows][IBM i][z/OS]重要: SAS がサポートされるのは、 バージョン 6.1 セルに統合されたバージョン 6.0.x と、 それより前のバージョンの間のサーバーに限られます。
  • Java アプリケーション、サーブレット、 およびエンタープライズ Bean 用の Java Authentication and Authorization Service (JAAS) プログラミング・モデル。
  • Enterprise Information Systems へのアクセスをサポートするリソース・アダプターに接続するため の J2EE コネクター・アーキテクチャー。

セキュア・ソケット通信、メッセージの暗号化、およびデータ暗号化をサポートする標準のセキュリティー・モデルおよびインターフェースは、 Java Secure Socket Extension (JSSE) および Java Cryptographic Extension (JCE) です。

オープン・アーキテクチャー・パラダイム

アプリケーション・サーバーは、複数層のエンタープライズ・コンピューティング・フレームワークの中核をなす部分です。 IBM WebSphere Application Server は、 オープン・アーキテクチャー・パラダイムを採用し、 エンタープライズ・ソフトウェア・コンポーネントと統合するプラグイン・ポイントを多数提供します。プラグイン・ポイントは、J2EE の標準仕様が適用できるところでは必ず、この仕様を基にしています。

オープン・アーキテクチャー・パラダイム

紺色の影が付いた背景は、 WebSphere Application Serverバージョン 9.0 と他のビジネス・アプリケーション・コンポーネントとの境界を示します。

[AIX Solaris HP-UX Linux Windows][IBM i]WebSphere Application Server では、Simple WebSphere Authentication Mechanism (SWAM)、Lightweight Third Party Authentication (LTPA)、および Kerberos が認証メカニズムとして提供されています。 1 つのユーザー・レジストリー実装のみを、WebSphere Application Server のセキュリティー・ドメインのアクティブなユーザー・レジストリーとして構成できます。WebSphere Application Server のユーザー・レジストリー実装としては、UNIX、Windows、および IBM i ローカル OS と Lightweight Directory Access Protocol (LDAP) があります。また、この製品には、ファイル・ベースおよび Java Database Connectivity (JDBC) ベースのユーザー・レジストリー参照の実装もあります。 この製品は、認証メカニズムとユーザー・レジストリーの柔軟な組み合わせをサポートしています。 SWAM は簡単に構成できるため、単一のアプリケーション・サーバー環境で有用です。 ID アサーションが使用可能になっている場合は、 分散環境で SWAM を使用することもできます。ID アサーション・フィーチャーは、CSIv2 セキュリティー・プロトコルでのみ 使用可能です。
注: SWAM は WebSphere Application Server の前のリリースで非推奨になり、将来のリリースで削除されます。

[AIX Solaris HP-UX Linux Windows][IBM i]LTPA 認証メカニズムは、すべてのプラットフォーム・セキュリティー用に設計されています。 ダウンストリーム・サーバーはセキュリティー・トークンを検証できます。また、リバース・セキュア・プロキシー・サーバー とシングル・サインオン (SSO) とのトラスト・アソシエーション関係のセットアップもサポートします。 これについては後述します。 LTPA と LDAP またはカスタム・ユーザー・レジストリー・インターフェースとの組み合わせ以外に、 バージョン 6.x 以降 では、LocalOS ユーザー・レジストリー・インターフェースを備えた LTPA にも対応しています。単一のノードに 複数のアプリケーション・サーバーが組み込まれている場合に、 この新しい構成は特に有効です。 ローカル OS のユーザー・レジストリー実装が、 Windows ドメイン・コントローラーなどの集中化されたユーザー・レジストリーになっている場合、 または複数ノード上で整合性のある状態を維持できる場合は、この構成を分散環境で機能させることができます。

[AIX Solaris HP-UX Linux Windows][IBM i][z/OS]WebSphere Application Server は、 J2EE コネクター・アーキテクチャーをサポートし、コンテナー管理認証を提供します。 このサーバーは、デフォルトの Java 2 Connector (J2C) のプリンシパルおよびクレデンシャル・マッピング・モジュールを提供します。 このモジュールは、任意の認証済みユーザーのクレデンシャルを、 指定したエンタープライズ情報システム (EIS) セキュリティー・ドメインのパスワード・クレデンシャルにマップします。 このマッピング・モジュールは、Java 2 コネクターおよび JAAS 仕様に従って設計された特別な JAAS ログイン・モジュールです。 他のマッピング・ログイン・モジュールも接続できます。

[z/OS]

ユーザー・レジストリーおよびアクセス制御

ユーザー・レジストリーにはユーザーおよびグループに関する情報が入っています。 WebSphere Application Server のユーザー・レジストリーは、 ユーザーの認証を行い、 ユーザーおよびグループに関する情報を取得して、 セキュリティー関連の機能 (認証および許可など) を実行します。

WebSphere Application Server では、以下のユーザー・レジストリー実装が提供されます。
  • ローカル OS (SAF ベース)
  • LDAP
  • 統合リポジトリー

WebSphere Application Server は、ローカル OS、LDAP、および統合リポジトリーのレジストリーの他にも、カスタム・レジストリー・フィーチャー (カスタム・ユーザー・レジストリーとも言います) を使用して任意のレジストリーをサポートするプラグインも提供しています。

WebSphere Application Server のローカル OS レジストリー実装が選択されている場合、 WebSphere 環境で直接 Security Access Facility (SAF) を使用して、 Resource Access Control Facility (RACF) などの z/OS Security Server 機能を統合できます。 ローカル OS 以外のレジストリーを構成する場合、2 つのオプションを持つ z/OS Security Server 機能を活用できます。 適切なシステム・ログイン構成で、プラグ可能な JAAS マッピング・モジュール (とそれに続けて WebSphere Application Server for z/OS 提供の JAAS ログイン・モジュール) を構成できます。 WebSphere Application Server バージョン 8.5 では、代わりに分散 ID マッピング・フィーチャーを使用できます。

詳しくは、レジストリーまたはリポジトリーの選択を参照してください。

WebSphere Application Server 構成: WebSphere Application Serverバージョン 9.0 for z/OS では、 既存の z/OS 以外のアプリケーションを System Authorization Facility (SAF) および RACF などの z/OS 固有の機能と統合することができます。 これにより、WebSphere Application Server for z/OS と z/OS 以外のプラットフォームのレジストリーを統合できます。以下に例を示します。

表 1. WebSphere Application Server レジストリー構成の例.

次の表に、WebSphere Application Server レジストリー構成の例を示します。

アプリケーション・サーバー構成 レジストリー・タイプ 許可方式 利点
WebSphere Application Server LDAP WebSphere バインディングおよび Tivoli® Access Manager などの外部セキュリティー・プロバイダー 共有レジストリー (異機種のプラットフォームに渡る)
WebSphere Application Server for z/OS RACF WebSphere バインディングおよび RACF EJBROLE 集中アクセスおよび監査機能 (バージョン 4.0 を実行しているサーバーを含むことができる)
WebSphere Application Server 混合環境 LDAP またはカスタム WebSphere バインディング、外部セキュリティー・プロバイダー、 および RACF EJBROLE 共有レジストリー、一元アクセス、および監査機能
前述の表の説明をここに図示します。
  • WebSphere Application Server ネットワーク・レジストリー構成 ネットワーク・レジストリー構成
  • WebSphere Application Server for z/OS ネットワーク・レジストリー構成: z/OS ネットワーク・レジストリー構成
  • z/OS セキュリティー拡張を使用した WebSphere Application Server ネットワーク・レジストリー z/OS セキュリティー拡張を使用したネットワーク・レジストリー

認証メカニズム

WebSphere Application Server では、以下の認証メカニズムがサポートされます。
  • Lightweight Third Party Authentication (LTPA)

    Lightweight Third Party Authentication では、認証済みユーザーのセキュリティー・トークンが生成されます。 このトークンを使用することより、以降の呼び出しで、シングル・サインオン (SSO) ドメイン内の同じサーバーまたは 他のサーバーに対して、そのユーザーが認証済みであることを示すことができます。

  • Kerberos

    認証メカニズムとしての Kerberos のセキュリティー・サポートは、このリリースの WebSphere Application Server で追加されました。Kerberos は、成熟し、柔軟性が高く、オープン、かつ非常にセキュアなネットワーク認証プロトコルです。Kerberos には、認証、相互認証、メッセージの保全性と機密性、および委任の機能が含まれています。

  • Simple WebSphere Authentication Mechanism (SWAM)
    SWAM は簡単に構成できるため、 単一のアプリケーション・サーバー環境で役立ちます。 ただし、SWAM では、要求ごとにユーザー ID とパスワードの認証を行う必要があります。
    注: SWAM は WebSphere Application Server の前のリリースで非推奨になり、将来のリリースで削除されます。

IIOP 認証プロトコル

IIOP 認証プロトコルは、Java クライアントから WebSphere Application Server for z/OS への要求、 または J2EE アプリケーション・サーバー間の要求を認証するためのメカニズムです。Common Secure Interoperability Version 2 (CSIv2) は、WebSphere Application Server for z/OS バージョン 6.x 以降で実装されており、 戦略的プロトコルであると見なされています。

[z/OS]

WebSphere Application Server for z/OS コネクターのセキュリティー

WebSphere Application Server は、 J2EE コネクター・アーキテクチャーをサポートし、コンテナー管理認証を提供します。 WebSphere Application Server は、デフォルトの J2C のプリンシパルおよびクレデンシャル・マッピング・モジュールを提供します。 このモジュールは、任意の認証済みユーザーのクレデンシャルを、指定した EIS (Enterprise Information System) セキュリティー・ドメイン のパスワード・クレデンシャルにマップします。EIS システムが、WebSphere Application Server と同一のセキュリティー・ドメインにある場合、z/OS 仕様のコネクターもサポートされています。 この場合、J2EE 要求に対して使用する認証済みクレデンシャルを EIS のクレデンシャルとして使用できるため、パスワードは必要ではありません。

Web Services Security

WebSphere Application Server では、Organization for the Advancement of Structured Information Standards (OASIS) Web Services Security Version 1.1 仕様に基づいて Web サービスを保護することができます。 このような標準は、Web サービス環境で交換されるメッセージの保護方法を 規定します。この仕様は、メッセージの保全性と機密性を保護するための中核機構を定義し、セキュリティー関連の要求と メッセージを関連付けるためのメカニズムを提供します。

トラスト・アソシエーション

トラスト・アソシエーションにより、サード・パーティーのセキュリティー・サーバーを IBM WebSphere Application Server セキュリティーに統合できます。 具体的には、 リバース・プロキシー・サーバーがフロントエンド認証サーバーとして機能できるようになる一方で、WebSphere Application Server は、 製品自体の許可ポリシーを、プロキシー・サーバーから渡されたクレデンシャルに適用します。リバース・プロキシー・サーバーは、WebSphere Application Server にディスパッチされるすべての Web 要求に その認証ポリシーを適用します。トラスト・アソシエーション・インターセプター (TAI) を実装する製品には、以下のものがあります。
  • IBM Tivoli Access Manager for e-business
  • WebSEAL
  • Caching Proxy
トラスト・アソシエーションの使用方法の詳細については、トラスト・アソシエーションを参照してください。

セキュリティー属性の伝搬

セキュリティー属性の伝搬により、WebSphere Application Server は、 セキュリティー属性を構成内のサーバー間でトランスポートできます。セキュリティー属性には、 認証済みサブジェクト・コンテンツおよびセキュリティー・コンテキスト情報が含まれます。WebSphere Application Server は、 これらのセキュリティー属性を以下のいずれかから取得できます。
  • 静的属性を照会するエンタープライズ・ユーザー・レジストリー
  • 静的または動的属性を照会できる、カスタム・ログイン・モジュール
セキュリティー属性の伝搬は、Java シリアライゼーションを使用して、 サブジェクト内に格納されているすべてのオブジェクトに伝搬サービスを提供します。 セキュリティー属性の伝搬の使用方法の詳細については、セキュリティー属性の伝搬を参照してください。

シングル・サインオン・インターオペラビリティー・モード

WebSphere Application Server では、インターオペラビリティー・モード・オプションにより、WebSphere Application Server バージョン 6.1.x 以降の シングル・サインオン (SSO) 接続が、前のバージョンのアプリケーション・サーバーと相互運用できるようになります。 このオプションを選択した場合、WebSphere Application Server は応答に旧スタイルの LtpaToken を追加するため、 このトークン・タイプでのみ機能する他のサーバーに応答を送信することができます。 このオプションは、Web インバウンド・セキュリティー属性の伝搬オプションが使用可能になっている場合にのみ適用されます。シングル・サインオンの詳細については、Web ユーザー認証を最小化するためのシングル・サインオンの実装を参照してください。

[AIX Solaris HP-UX Linux Windows][IBM i][z/OS]

Web コンテナーおよび EJB コンテナーを使用した J2EE リソースのセキュリティー

それぞれのコンテナーは、2 種類のセキュリティー (宣言セキュリティープログラマチック・セキュリティー) に対応しています。 宣言セキュリティーでは、アプリケーションのセキュリティー構造 (データの保全性と機密性、認証要件、セキュリティーのロール、アクセス制御など) が、そのアプリケーション外部の形式で表されます。 特にデプロイメント記述子は、J2EE プラットフォームにおける宣言セキュリティーの主要な手段です。 WebSphere Application Server は、デプロイメント記述子から取得した情報と、デプロイヤーと管理者が 1 組の XML ディスクリプター・ファイルで指定した情報を含む、J2EE セキュリティー・ポリシーを維持します。コンテナーは、実行時には XML ディスクリプター・ファイルで定義されたセキュリティー・ポリシーを使用して、データ制約とアクセス制御を実行します。 宣言セキュリティー単独ではアプリケーションのセキュリティー・モデルを表現するのに十分でない場合には、 プログラマチック・セキュリティーがアプリケーション・コードによって使用され、アクセス判断を行うことがあります。 プログラマチック・セキュリティーのアプリケーション・プログラミング・インターフェース (API) は、 Enterprise JavaBeans (EJB) EJBContext インターフェースの 2 つのメソッド (isCallerInRolegetCallerPrincipal) およびサーブレット HttpServletrequest インターフェースの 3 つのメソッド (isUserInRolegetUserPrincipalgetRemoteUser) で構成されています。

[AIX Solaris HP-UX Linux Windows][z/OS]

Java 2 セキュリティー

WebSphere Application Server は、 Java 2 セキュリティー・モデルをサポートしています。 管理サブシステム、Web コンテナー、EJB コンテナーなどのシステム・コードは、WebSphere Application Server のセキュリティー・ドメイン内で実行され、現在の実装では、AllPermission の権限を付与され、すべてのシステム・リソースにアクセスできます。 アプリケーションのセキュリティー・ドメイン内で 実行されているアプリケーション・コードは、デフォルトで J2EE 仕様に従ってアクセス権を付与されており、 制限されたシステム・リソース・セットにしかアクセスできません。WebSphere Application Server のランタイム・クラスは、WebSphere Application Server のクラス・ローダーに保護されているため、 アプリケーション・コードからは不可視になっています。

[AIX Solaris HP-UX Linux Windows][z/OS]

Java 2 Platform, Enterprise Edition コネクター・セキュリティー

WebSphere Application Server は、 J2EE コネクター・アーキテクチャーをサポートし、コンテナー管理認証を提供します。 WebSphere Application Server は、デフォルトの J2C のプリンシパルおよびクレデンシャル・マッピング・モジュールを提供します。 このモジュールは、任意の認証済みユーザーのクレデンシャルを、指定した EIS (Enterprise Information System) セキュリティー・ドメイン のパスワード・クレデンシャルにマップします。

[z/OS]EIS システムが、WebSphere Application Server と同一のセキュリティー・ドメインにある場合、z/OS 仕様のコネクターもサポートされています。 この場合、J2EE 要求に対して使用する認証済みクレデンシャルを EIS のクレデンシャルとして使用できるため、パスワードは必要ではありません。

[z/OS]詳しくは、接続スレッド ID を参照してください。

[z/OS]WebSphere Application Server プロセス

アプリケーション・サーバー・プロセスはすべて、デフォルトでは、セル・レベルのセキュリティー XML 文書で定義される共通の セキュリティー構成を共有することになっています。セキュリティー構成では、WebSphere Application Server のセキュリティーを実行 するかどうか、Java 2 セキュリティーを実行するかどうかを決定し、認証メカニズムとユーザー・レジストリー構成、 セキュリティー・プロトコル構成、JAAS ログイン構成、および Secure Sockets Layer 構成について決定します。 アプリケーションには、それぞれ固有のセキュリティー要件がある場合があります。 アプリケーション・サーバー・プロセスはそれぞれ、独自のセキュリティー要件に対応するようにサーバー別のセキュリティー構成を作成することも、WebSphere セキュリティー・ドメインにマップすることもできます。 セキュリティー構成がすべて、アプリケーション・サーバー・レベルで変更できるわけではありません。 アプリケーション・サーバー・レベルで変更できるセキュリティー構成には、 アプリケーション・セキュリティーを実行すべきかどうか、Java 2 セキュリティーを実行すべきかどうかということと、 セキュリティー・プロトコル構成が含まれます。 WebSphere セキュリティー・ドメインでは、セキュリティー構成をさらに詳細に制御できます。このドメインは、個々のサーバーにマップすることができます。詳しくは、『複数のセキュリティー・ドメイン』を参照してください。

[z/OS]一般情報詳細については、スレッド ID サポートによるセキュリティー状態を参照してください。

管理サブシステム・セキュリティー構成は、常にセル・レベルのセキュリティー文書で決定されます。 Web コンテナーと EJB コンテナーのセキュリティー構成は、サーバー・レベルのセキュリティー文書ごとのオプションによって決定され、 セル・レベルのセキュリティー文書よりも優先されます。

セキュリティー構成は、 セル・レベルでもアプリケーション・サーバー・レベルでも、Web ベースの管理コンソール・アプリケーションか、該当するスクリプト・アプリケーションのいずれかで管理されます。

[z/OS]注: サーバー・レベルで認証メカニズムを変更することはできません。

Web セキュリティー

Web リソースに対してセキュリティー・ポリシーを指定して IBM WebSphere Application Server セキュリティーを実行すると、 Web コンテナーは、Web クライアントがそのリソースを要求したときにアクセス制御を実行します。Web コンテナーはそのクライアントの認証データで、指定した認証メソッドに適合するクライアントがないかを調べ、データ制約が満たされていることを確認して、 認証済みユーザーに必要なセキュリティー・ロールがあるかどうかを判断します。WebSphere Application Server は、以下のログイン方式をサポートします。
  • HTTP 基本認証
  • HTTPS クライアント認証
  • フォーム・ベースのログイン
  • Simple and Protected GSS-API Negotiation (SPNEGO) トークン
クライアント証明書の WebSphere Application Server セキュリティー・クレデンシャルへのマッピングでは、UserRegistry 実装を使用してマッピングを実行します。

[AIX Solaris HP-UX Linux Windows][IBM i]WebSphere Application Server では、ローカル OS のユーザー・レジストリーはマッピング機能をサポートしていません。

[AIX Solaris HP-UX Linux Windows][IBM i]LTPA 認証メカニズムが構成され、シングル・サインオン (SSO) が使用可能になっていると、 認証済みクライアントに、指定したセキュリティー・ドメイン内のユーザーを表すセキュリティー Cookie が発行されます。

セキュリティー Cookie および基本認証情報がインターセプトされたり再実行されたりするのを防ぐために、 Secure Sockets Layer (SSL) の使用をお勧めします。トラスト・アソシエーションが構成されていると、WebSphere Application Server は、認証済みユーザーの ID を、セキュア・リバース・プロキシー・サーバーとの間で確立した信頼関係に基づく、セキュリティー・クレデンシャルにマップすることができます。

Web セキュリティー

Web セキュリティー・コラボレーターと EJB セキュリティー・コラボレーターの場合は次のようになります。
  1. Web セキュリティー・コラボレーターは、アクセス・マネージャー実装を使用して、 ロール・ベースのアクセス制御を実行します。 アクセス・マネージャーは、デプロイメント記述子から派生したセキュリティー・ポリシーに基づいて許可を決定します。 認証済みのユーザー・プリンシパルは、必要なセキュリティー・ロールのいずれかを持っている場合に、 要求したサーブレットまたは JSP ファイルへアクセスできます。サーブレットおよび JSP ファイルは、 HttpServletRequest メソッド (isUserInRolegetUserPrincipal、 および getRemoteUser) を使用できます。例えば、管理コンソールは、isUserInRole メソッドを 使用して、ユーザー・プリンシパルに公開する適切な管理機能セット決定します。
  2. EJB セキュリティー・コラボレーターは、アクセス・マネージャー実装を使用して、 ロール・ベースのアクセス制御を実行します。 アクセス・マネージャーは、デプロイメント記述子から派生したセキュリティー・ポリシーに基づいて許可を決定します。 認証済みのユーザー・プリンシパルは、必要なセキュリティー・ロールのいずれかを持っている場合に、要求した EJB メソッドへアクセスできます。 EJB コードは、EJBContext メソッドの isCallerInRole および getCallerPrincipal を使用できます。 EJB コードは、JAAS ログインを実行する JAAS プログラミング・モデル、WSSubject doAs および doAsPrivileged メソッドも使用できます。doAs および doAsPrivileged PrivilegedAction ブロック内のコードは、サブジェクト ID を使用して実行されます。 そうでない場合、EJB メソッドは RunAs 構成に応じて、指定した RunAs ID または呼び出し元の ID のいずれかを使用して実行されます。

EJB セキュリティー

セキュリティーが有効になっていると、EJB コンテナーは EJB メソッドを起動してアクセス制御を実行します。 認証は、メソッド許可が特定の EJB メソッド用に定義されているかどうかに関係なく 行われます。

Java アプリケーション・クライアントは、 いくつかの方法で認証データを提供することができます。 sas.client.props ファイルを使用すると、 Java クライアントは、 認証を行うのにユーザー ID とパスワードを使用するか、SSL クライアント証明書を使用するかを指定できます。 クライアント証明書は、sas.client.props ファイル の定義に従って、鍵ファイルまたはハードウェア暗号カードに保管されます。ユーザー ID とパスワードは、 オプションで、sas.client.props ファイルで定義することもできます。

実行時には、Java クライアントはプログラマチック・ログインを実行することも、 遅延認証 を実行することもできます。

Java クライアントが、 保護されているエンタープライズ Bean に初めてアクセスしている遅延認証では、 セキュリティー・ランタイムは、必要な認証データを取得しようとします。 sas.client.props ファイルでの構成設定に応じて、セキュリティー・ ランタイムは、このファイルから認証データを検索するか、ユーザーにプロンプトを出すかのいずれかを行います。 Java クライアントではプログラマチック・ログインを使用することもできます。 WebSphere Application Server は、 JAAS プログラミング・モデルをサポートしており、プログラマチック・ログインの方法としては JAAS ログイン (LoginContext) が推奨されています。 バージョン 6.x およびバージョン 9.0 では、login_helper request_login ヘルパー関数は非推奨です。login_helper APT にプログラムされている Java クライアントは、本バージョンで実行できます。

EJB セキュリティー・コラボレーターは、アクセス・マネージャー実装を使用して、 ロール・ベースのアクセス制御を実行します。

アクセス・マネージャーは、デプロイメント記述子から派生したセキュリティー・ポリシーに基づいて許可を決定します。 認証済みのユーザー・プリンシパルは、必要なセキュリティー・ロールのいずれかを持っている場合に、要求した EJB メソッドへアクセスできます。EJB コードは、EJBContext メソッドの isCallerInRole および getCallerPrincipal を使用できます。 EJB コードでは、JAAS ログインを実行する JAAS プログラミング・モデル、WSSubject doAs および doAsPrivileged メソッド も使用できます。 doAs および doAsPrivileged PrivilegedAction ブロック内のコードは、サブジェクト ID を使用して実行 されます。 そうでない場合、EJB メソッドは RunAs 構成に応じて、指定した RunAs ID または呼び出し元の ID のいずれかを使用して実行されます。J2EE RunAs 仕様は エンタープライズ Bean レベルです。RunAs ID を指定すると、これがすべての Bean メソッドに適用されます。 IBM RunAs 拡張がバージョン 4.0 で導入したメソッド・レベルは、 引き続き本バージョンでもサポートされています。

[z/OS]注: 許可された後は、RunAs ID がダウンストリームで使用されます。 これは通常、呼び出し元 ID ですが、代行 ID の場合もあります。

連邦情報処理標準 (FIPS) による承認

連邦情報処理標準 (FIPS) は、米国連邦情報・技術局 (NIST) が、連邦コンピューター・システムのために発行した標準およびガイドラインです。 FIPS は、セキュリティーおよびインターオペラビリティーなど、標準に関する連邦政府の切実な要求がある一方で、 実施可能な業界標準または解決方法が存在しない場合のために開発されました。

WebSphere Application Server には、 Java Secure Socket Extension (JSSE) および Java Cryptography Extension (JCE) を含む暗号モジュールが組み込まれています。 この暗号モジュールは、FIPS 140-2 認証が行われています。

[AIX Solaris HP-UX Linux Windows][IBM i][z/OS]詳しくは、連邦情報処理標準 (FIPS) Java セキュア・ソケット拡張機能ファイルの構成を参照してください。

IBMJCEFIPS モジュールは、以下の対称暗号スイートをサポートしています。
  • AES (FIPS 197)
  • TripleDES (FIPS 46-3)
  • SHA1 メッセージ・ダイジェスト・アルゴリズム (FIPS 180-1)
IBMJCEFIPS モジュールは、以下のアルゴリズムをサポートしています。
  • デジタル署名 DSA および RSA アルゴリズム (FIPS 186-2)
  • ANSI X 9.31 (FIPS 186-2)
  • IBM Random Number Generator

IBMJCEFIPS 暗号モジュールは、FIPS が承認したアルゴリズムを含んでいます。 このアルゴリズムは、IBM JCE モジュール内のアルゴリズムの適正なサブセットを形成しています。


トピックのタイプを示すアイコン 概念トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=welc_security
ファイル名:welc_security.html