[z/OS]

WebSphere Application Server for z/OS における Secure Sockets Layer セキュリティー

このトピックでは、Secure Sockets Layer (SSL) プロトコル、および z/OS® における暗号サービス・システム SSL の動作方法について理解していることが前提になります。WebSphere® Application Server 内の複数のコンポーネントでは SSL が使用され、信頼性およびプライバシーが提供されます。これらのコンポーネントには、組み込みの HTTP トランスポート、オブジェクト・リクエスト・ブローカー (ORB) (ク ライアントおよびサーバー)、およびセキュア Lightweight Directory Access Protocol (LDAP) クライアントが含まれています。SSL の構成は、 WebSphere Application Server を使用するクライアントとサーバー間では異なります。ネットワークで、通信を保護し、 ユーザー認証を実施することでセキュリティーを追加する場合は、SSL セキュリティーを使用できます。

SSL は、WebSphere Application Server for z/OS で提供されるセキュリティーの不可欠な部分です。 これは 管理セキュリティー を使用可能にした場 合に活動化されます。 管理セキュリティー を使用可能にすると、管理コマンド、管理コンソール、および WebSphere Application Server プロセス間の通信を保護するために、SSL が常に管理サブシステムにより使用されます。

以下の場合にサーバー・セキュリティーを使用可能にすると、WebSphere Application Server for z/OS ランタイムは、 オプションで SSL を使用することができます。
  • 機密性が Web application Security Constraint として指定されている 場合、SSL は Web アプリケーションの保護に使用されます。トランスポート保証が CONFIDENTIAL または INTEGRAL の 場合、Web クライアントと Web サーバー間の通信が保護され、HTTPS (HTTP SSL) 経由で伝送されることを保証しています。さらに、 アプリケーションのデプロイメント中にセキュリティー制約 (CLIENT_CERT) が指定されている場合、SSL を クライアント認証の実行に使用することもできます。
  • Common Secure Interoperability バージョン 2 (CSIv2) トランスポート設定内で SSL/TLS がサポートされている場合 (または必要とされている場合)、SSL は Inter-ORB Protocol (IIOP) 要求の保護に使用できます。これらの設定は、 「セキュリティー」>「グローバル・セキュリティー」 とクリックして行います。 「RMI/IIOP セキュリティー」の下の、「CSIv2 インバウンド・トランスポート」または「CSIv2 アウトバウンド・トラ ンスポート」をクリックします。
  • アクティブなユーザー・レジストリーが LDAP の場合、SSL は LDAP クライアントおよびサーバーの間の 通信の保護に使用できます。
SSL を構成する場合、WebSphere Application Server for z/OS 上には 2 つのタイプの SSL レパートリーが存在します。 レパートリーのタイプは、SSL の処理に使用する 基礎となるサービスに関連しています。
  • Java™ Secure Socket Extension (JSSE) は、HTTP/SOAP コネクターを使用する管理要求の SSL レパートリー・タイプとして選択する必要があります。JSSE レパートリーは、(APAR PQ77586 を適用して) 鍵ストアか トラストストアの SAF 鍵リング、 または階層ファイル・システム (HFS) ファイルを指定できます。
注: System Secure Sockets Layer (SSSL) タイプの SSL 構成レパートリーは、 デーモンに属するものを除き、すべて Java Secure Socket Extension (JSSE) タイプに変換されます。System SSL は、現在はデーモン・アドレス・スペースによってのみ使用されます。その理由は、このデーモンは JVM がなくても実行され、JSSE は Java でのみサポートされるからです。

このトピックでは、SSL プロトコルおよび SSL が z/OS 上で動作する方法について 簡単に説明します。SSL プロトコルについては、以下の Web サイトを参照してください。http://home.netscape.com/eng/ssl3/ssl-toc.html

Secure Sockets Layer (SSL) は、 信頼性とプライバシーを提供するために、WebSphere Application Server 内の複数のコンポーネントにより使用されます。 複数のコンポーネントとは、組み込み HTTP トランスポート、ORB (クライアントおよびサーバー)、およびセキュア LDAP クライアントです。SSL の構成は、 WebSphere Application Server を使用するクライアントとサーバー間では異なります。ネットワーク内の保護された通信とユーザー認証に追加セキュリティーが必要であれば、Secure Sockets Layer (SSL) セキュリティーを使用できます。 WebSphere Application Server for z/OS における SSL サポートには、以下の複数の目的があります。
  • メッセージはネットワーク間をフローするので、メッセージのセキュリティーを保護するために、業界で受け入れられる方法を提供する。 これは、トランスポート層セキュリティー と呼ばれます。トランスポート層セキュリティー (TLS) は、通信する 2 つのアプリケーション間のプライバシーとデータ保全性を提供する機能です。 基本トランスポート・プロトコルの上部のソフトウェア層 (例えば、TCP/IP の上部) で保護が生じます。

    SSL は、暗号化テクノロジーを使用して通信リンク上にセキュリティーを提供します。これにより、ネットワーク内のメッセージ保全性を確認します。 通信は、送り手と受け手の間で暗号化されるので、第三者がメッセージを改ざんすることはできません。 また、SSL は、機密性 (メッセージ内容が読み取られないことを確認する)、再生検出、および順不同検出も提供しています。

  • さまざまな認証プロトコルの動作で使用される、セキュアな通信媒体を提供する。 単一 SSL セッションは、複数の認証プロトコル (すなわち、通信している当事者の識別を証明する方式) を運ぶことができます。
    その識別をサーバーが証明するメカニズムを、SSL サポートは常に提供します。 WebSphere Application Server for z/OS におけるサポートを使用すると、 クライアントがその ID を証明するために、以下の方法を使用することができます。
    • 基本認証 (SSL Type 1 認証とも呼ばれる)。ターゲット・サーバーが認識しているユーザー ID とパスワード (またはパスワード句) を渡すことにより、クライアントが自分の識別をサーバーに証明します。
      SSL 基本認証を使用した場合、次のとおりになります。
      • z/OS クライアントは、CSIv2 ユーザー名およびパスワード・メカニズム Generic Security Services Username Password (GSSUP) により定義されているユーザー ID とパスワードを使用する WebSphere Application Server for z/OS と安全に通信することができます。
      • WebSphere Application Server クライアントは、MVS™ ユーザー ID とパスワード (またはパスワード句) を使用することにより、WebSphere Application Server for z/OS サーバーと安全に通信することができます。
      • 要求時に常にパスワードが必要なので、簡単なクライアント/サーバー接続でのみ使用されます。 つまり、要求への応答の際に、サーバーはクライアントのユーザー ID を別のサーバーに送信できません。
    • クライアント証明書サポート。サーバーとクライアントの両方がデジタル証明書を提供し、互いにその識別を証明します。

      認証用として WebSphere Application Server for z/OS にデジタル証明書が指定された場合、 暗号化解除された証明書は、使用可能なユーザー・リポジトリー内の有効なユーザー ID にマップされます。 Web アプリケーションには多数のクライアントがあるため、クライアント認証の管理が負荷になります。 ローカル・オペレーティング・システムが WebSphere Application Server for z/OS 上の使用可能なユー ザー・リポジトリーの場合、SAF 証明書名フィルターにより、クライアント証明書を保管せずに MVS ユーザー ID にマップすることができます。 証明書名フィルター を使用すると、MVS ユーザー ID の作成およびすべてのユーザーのクライアント証明書の管理における 管理オーバーヘッドを発生させることなく、多数のユーザーがサーバーにアクセスすることを許可することができます。

    • その識別をサーバーが証明するメカニズムを、SSL サポートは常に提供します。 さまざまなメカニズムを使用してクライアント ID を証明できます。SSL v3 (および TLS) プロトコルにより、 クライアント・デジタル証明書を必要に応じて交換することもできます。これらの証明書は認証に使用されます。
    • CSIv2 ID アサーション。これには、z/OS プリンシパル、X501 識別名、および X509 デジタル証明書へのサポートが含まれます。
    • ID アサーション、またはトラスト・アソシエーション。中間サーバーは、そのクライアントの識別を効果的なセキュア方法でターゲット・サーバーに送信できます。 このサポートは、SSL セッションの所有者として中間サーバーを確立するために、クライアント証明書を使用します。 システムは、リソース・アクセス管理機能 (RACF®) を介して、中間サーバーが信頼できるかどうかを検査します (このレベルの信頼性を付与するために、管理者により、セキュア・システム・コードを排他的に実行する RACF ID に CBIND 許可が付与されます)。 この中間サーバーで信頼性が確立されると、クライアント ID (MVS ユーザー ID) は、ターゲット・サーバーによって 個別に検査される必要はありません。つまり、これらのクライアント ID は、認証を必要とせずに簡単に表明されます 。
  • 次のような他の製品と安全に相互運用できるようにします。
    • z/OS 用顧客情報管理システム (CICS®) トランザクション・サーバー
    • その他のバージョンの WebSphere Application Server
    • Common Object Request Broker Architecture (CORBA) 準拠オブジェクト要求ブローカー

SSL はデフォルトでは使用不可であり、SSL サポートはオプショナルです。 セキュリティーがオンの状態で WebSphere Application Server for z/OS を実行している場合には、 管理コンソールで SSL が必要です。 使用されている SSL レパートリー・タイプは、Java Secure Socket Extension (JSSE) です。

表 1. SSL 接続シーケンス.

次の表では、SSL 接続がどのように動作するかを説明します。

段階 説明
ネゴシエーション クライアントがサーバーを検出したら、クライアントとサーバーは、通信のセキュリティー・タイプをネゴシエーションします。 SSL が使用される場合には、クライアントは、特別な SSL ポートに接続するよう指示されます。
ハンドシェーク クライアントが SSL ポートに接続すると、SSL ハンドシェークが起こります。成功すれば、暗号化通信が開始します。 クライアントは、サーバーのデジタル証明書を検査することによって、サーバーを認証します。

クライアント証明書がハンドシェーク時に使用される場合は、クライアントのデジタル証明書を検査することによって、サーバーはクライアントを認証します。

継続中の通信 SSL ハンドシェーク時に、クライアントとサーバーは、通信を暗号化するために使用する暗号仕様をネゴシエーションします。
最初のクライアント要求 クライアント識別の判別は、選択されたクライアント認証メカニズムによって異なります。次のいずれかになります。
  • CSIv2 ユーザー ID およびパスワード (GSSUP)
  • CSIv2 表明された識別

規則

  • z/OS 上の Java または C++ クライアントのいずれも、WebSphere Application Server for z/OS またはワークステーション Application Server と相互運用して、SSL を使用することができます。 CSIv2 セキュリティーのみが、z/OS 上で Java クライアントをサポートします。
  • ハンドシェークの部分は、メッセージ保護のために SSL によって使用される暗号化仕様をネゴシエーションするためのものです。 使用される暗号仕様と鍵サイズを判別する要因として、次の 2 つがあります。
    • システムにインストールされる暗号サービスのセキュリティー・レベル。これにより、WebSphere Application Server for z/OS で使用可能な暗号仕様および鍵サイズが決定されます。
    • 管理コンソールを使用したサーバー構成。これにより、SSL 暗号スイートを指定できるようになります。
    詳細については、「 z/OS System Secure Sockets Layer Programming」を参照してください。
  • z/OS システム SSL ソケットでは、デジタル証明書および鍵を保管するために、RACF またはそれと同等のものを使用する必要があります。 デジタル証明書および鍵を、HFS の鍵データベースに入れる作業は、必ず実行してください。
ヒント: SSL 基本認証セキュリティーを定義するには、署名されたサーバーの証明書、およびサーバー証明書を署名した認証局からの認証局 (CA) 証明書を最初に要求しなければなりません。 サーバーの署名された証明書および認証局からの CA 証明書を受け取った後に、RACF を使用して デジタル証明書の使用を許可し、サーバー証明書とサーバー鍵リングを RACF に保管し、SSL レパートリー・エイリアスを作成し、 さらに管理コンソールを使用してサーバーの SSL セキュリティー・プロパティーを定義する必要があります。

クライアントについては、鍵リングを作成し、サーバーの証明書を出した認証局からの CA 証明書をその鍵リングに付加する必要があります。 z/OS クライアントでは、RACF を使用してクライアント鍵リングを作成し、その鍵リングに CA 証明書を付加する必要があります。 クライアントでサーバーを認証する場合は、サーバー (実際には、コントローラー・ユーザー ID) は、 認証局によって作成された、署名付き証明書を所有している必要があります。 サーバーは、その識別を証明するために、署名された証明書をクライアントに渡します。クライアントは、サーバーの証明書を出したのと同じ認証局からの CA 証明書を所有していなければなりません。 クライアントは、CA 証明書を使用して、サーバーの証明書が本物かどうかを検査します。 証明書が検査された後、クライアントはメッセージが別のサーバーからではなく、本当にそのサーバーから届いていることを確信できます。 サーバーがクライアントを認証する場合は、クライアントがその識別を証明するためにサーバーに渡す、クライアント証明書がないことに注意してください。 SSL 基本認証スキームでは、サーバーは、クライアントのユーザー ID とパスワード (またはパスワード句) を調べることによって、クライアントを認証します。

デーモンの MVS ユーザー ID の鍵リングの作成の詳細については、 デーモン Secure Sockets Layer が使用する鍵リングのセットアップを参照してください。


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



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