ヘッダーをスキップ
Oracle® Fusion Middleware管理者ガイド
11g リリース1 (11.1.1)
B60984-05
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

6 Oracle Fusion MiddlewareでのSSLの構成

SSLを使用してOracle Fusion Middlewareコンポーネント間の通信を保護するように、Oracle Fusion Middlewareを構成できます。SSLは、通信を保護するための業界標準です。Oracle Fusion MiddlewareではSSLバージョン3に加えて、TLSバージョン1をサポートしています。


注意:

SSLバージョン2は、セキュリティ上の問題があるため、11g リリース1(11.1.1)ではサポートされていません。11g リリース1(11.1.1)より前にSSLバージョン2を使用していたコンポーネントまたはアプリケーションは、他のSSLバージョン(SSLバージョン3およびTLSバージョン1)を使用するように自動的にアップグレードされます。



関連項目:

第7章「SSL自動化ツールの使用」。SSL自動化ツールを使用すると、ドメイン固有のCAを使用して複数のコンポーネントにSSLを構成できます。


この章では、SSLの概要と、Oracle Fusion MiddlewareコンポーネントおよびアプリケーションでSSLを使用する方法について説明します。これらの項目が含まれます。


注意:

Oracle WebLogic Server内でSSL接続を構成する場合、ここでの手順を実行するかわりに、この章で紹介しているOracle WebLogic Serverの関連ドキュメントを参照してください。


6.1 SSLのしくみ

この項では、基本的なSSLの概念について説明します。これらの項目が含まれます。

6.1.1 SSLの機能

SSLは、メッセージの暗号化、整合性および認証を提供することで、通信を保護します。SSL標準により、関係するコンポーネント(ブラウザやHTTPサーバーなど)は、どの暗号化、認証および整合性メカニズムを使用するかのネゴシエーションができます。

  • 暗号化を行うと、正当な受信者のみがメッセージを読むことができ機密が保持されます。SSLでは、様々な暗号化アルゴリズムを使用してメッセージを暗号化できます。各SSLセッションの開始時に行われるSSLハンドシェイク中、クライアントとサーバーは、どのアルゴリズムを使用するかのネゴシエーションを行います。SSLがサポートしている暗号化アルゴリズムには、AES、RC4、3DESなどがあります。

  • 整合性により、クライアントが送信したメッセージが改ざんされずに正当なサーバーに届きます。メッセージの整合性を確保するために、クライアントはハッシュ機能を使用してメッセージをダイジェストにハッシュし、このメッセージ・ダイジェストをサーバーに送信します。サーバーは、さらにこのメッセージをダイジェストにハッシュし、これらのダイジェストを比較します。SSLでは、2つの異なるメッセージから同じダイジェストをコンピュータで生成するのが不可能なハッシュ機能を使用しているため、サーバーでは2つのダイジェストが一致しない場合には、何者かによりメッセージが改ざんされたと見なすことができます。SSLがサポートしているハッシュ機能の1つに、SHA1があります。

  • 認証を使用すると、サーバーとクライアントは互いに相手の身元を確認できます。クライアントがSSLセッションを開始すると、サーバーは通常、サーバー自身の証明書をクライアントに送信します。証明書とは、VeriSignなどの信頼できる認証局によって発行されるデジタルIDです。第8章「キーストア、ウォレットおよび証明書の管理」では、証明書について詳細に説明しています。

    クライアントは、サーバー証明書内の証明連鎖を検証することで、サーバーが本物であることを確認します。サーバー証明書は、サーバー証明書に署名した認証局(CA)により保証されています。

    また、サーバーがクライアントの識別を認証する必要がある場合には、サーバーがクライアントに証明書の所持を要求することもできます。

6.1.2 秘密鍵と公開鍵の暗号化について

メッセージの整合性、認証および暗号化を提供するために、SSLでは秘密鍵と公開鍵の両方の暗号化を使用します。

秘密鍵の暗号化

対称鍵の暗号化では、通信を保護する目的で2者以上が共有する1つの秘密鍵が必要です。この鍵は、当事者間で送信された安全なメッセージを暗号化および復号化するために使用します。これを行うには、安全な方法で各当事者に鍵を事前に配布しておく必要があります。この方法における問題点は、鍵を安全に転送し、格納することが困難なことです。

SSLでは、各当事者は互いに認識している乱数を使用して秘密鍵を個別に計算します。次に、その秘密鍵を使用して暗号化したメッセージを送信します。

公開鍵の暗号化

公開鍵の暗号化による公開鍵/秘密鍵のペアおよび鍵配布のための安全な方法を採用することで、この問題は解決します。対応する秘密鍵の所有者のみが復号化できるメッセージは、自由に使用できる公開鍵によって暗号化できます。秘密鍵は、その他のセキュリティ資格証明とともに、Oracleウォレットなどの暗号化されたコンテナに安全に格納されます。

公開鍵のアルゴリズムでは、メッセージの秘密は保証されますが、安全な通信は必ずしも保証されません。その理由は、通信者間の識別が検証されないためです。安全な通信を確立するには、メッセージの暗号化に使用される公開鍵が相手の受信者に実際に属していることを確認することが重要です。そうしないと、第三者が通信を傍受し、公開鍵のリクエストに割り込み、正当な鍵を独自の公開鍵に置き換えることが可能になります(介在者攻撃)。

このような攻撃を避けるためには、公開鍵の所有者を確認する必要があります。これは認証と呼ばれるプロセスです。認証は、認証局(CA)を介して行うことができます。CAは、両通信者間によって信頼されている第三者です。

CAは、エンティティの名前、公開鍵および他のセキュリティ資格証明を含む公開鍵証明書を発行します。通常、このような資格証明には、CA名、CAの署名および証明書の有効日(開始日、終了日)が含まれています。

CAでは独自の秘密鍵を使用してメッセージを暗号化します。一方、そのメッセージの復号化には公開鍵が使用されるため、メッセージがCAによって暗号化されたものであるかどうかが確認されます。CA公開鍵は広く一般に知られているため、アクセスするたびに認証する必要はありません。このようなCA公開鍵はウォレットに格納されます。

6.1.3 キーストアおよびウォレット

Oracle Fusion Middlewareでは、ほとんどのコンポーネントで記憶域メカニズムとしてOracleウォレットが使用されます。Oracleウォレットは、証明書、信頼できる証明書、証明書リクエスト、秘密鍵などの資格証明を格納するコンテナです。Oracle Internet DirectoryなどのLDAPディレクトリやファイル・システムにOracleウォレットを格納できます。Oracleウォレットは、パスワードで保護することも自動ログインにもできます。

Oracleウォレットを使用するコンポーネントは次のとおりです。

  • Oracle HTTP Server

  • Oracle Web Cache

  • Oracle Internet Directory

これらのコンポーネントでのSSLの構成では、Oracleウォレットを設定および使用する必要があります。

Oracle Virtual Directoryなどのコンポーネントでは、JKSキーストアを使用して鍵および証明書を保存します。そのためOracle Virtual DirectoryでのSSLの構成では、JKSキーストアを設定および使用する必要があります。

キーストアおよびウォレットの構成の詳細は、次を参照してください。

6.1.4 SSLセッションのしくみ

SSLプロトコルには、ハンドシェイク・フェーズとデータ転送フェーズという2つのフェーズがあります。ハンドシェイク・フェーズでは、サーバーおよびオプションでクライアントを認証し、データ転送フェーズで転送されるデータを保護するための暗号化鍵を設定します。

クライアントがサーバーへのSSL接続を要求すると、クライアントとサーバーはまずハンドシェイク・フェーズでメッセージを交換します(一般的なシナリオとしては、http://ではなくhttps://プロトコルを使用して、サーバーからページを要求するブラウザがあります。HTTPSプロトコルは、HTTPでSSLを使用することを示します)。

図6-1に、Webサーバーとブラウザ間の一般的なSSL接続用ハンドシェイク・メッセージを示します。この図では次の手順を示しています。

  1. クライアントは、サーバーにハロー・メッセージを送信します。

    メッセージには、クライアントがサポートしているアルゴリズムの一覧および鍵を生成するための乱数が含まれています。

  2. サーバーは、クライアントにハロー・メッセージを送信してレスポンスを返します。このメッセージには、次の内容が含まれています。

    • 使用するアルゴリズム。これは、クライアントが送信した一覧から、サーバーによって選択されます。

    • 鍵の生成に使用する乱数。

  3. サーバーは、クライアントに証明書を送信します。

  4. クライアントは、サーバーの証明書の妥当性、発行者CAおよびオプションでサーバーのホスト名がサブジェクトDNと一致するかどうかをチェックして、サーバーを認証します。クライアントはセッション・キャッシュのセッションIDを送信します。

  5. クライアントが乱数(プリマスタ・シークレット)を生成し、サーバーの公開鍵を使用して暗号化し、サーバーに送信します。

  6. サーバーは、秘密鍵を使用してメッセージを復号化し、プリマスタ・シークレットを取得します。

  7. クライアントとサーバーは、SSLセッションで使用される鍵を個別に計算します。

    これらの鍵は、互いに認識しているプリマスタ・シークレットと乱数に基づいて計算されるため、それぞれの相手には送信されません。鍵には次の内容が含まれています。

    • クライアントがサーバーへの送信前にデータを暗号化するために使用する暗号化鍵

    • サーバーがクライアントへの送信前にデータを暗号化するために使用する暗号化鍵

    • クライアントがデータのメッセージ・ダイジェストを作成するために使用する鍵

    • サーバーがデータのメッセージ・ダイジェストを作成するために使用する鍵

    暗号化鍵は、対称的です。つまり、データの暗号化と復号化には同じ鍵が使用されます。

  8. クライアントとサーバーは、相互にFinishedメッセージを送信します。これらは前の手順で生成した鍵を使用して送信される最初のメッセージ(最初の安全なメッセージ)です。

    Finishedメッセージには、各当事者が送信した以前のハンドシェイク・メッセージがすべて含まれています。各当事者は、受信した以前のメッセージが、Finishedメッセージに含まれているメッセージに一致するかどうかを確認します。これは、ハンドシェイク・メッセージが改ざんされていないことを確認するためです。

  9. クライアントとサーバーは、暗号化鍵とハッシュ鍵およびアルゴリズムを使用してデータを転送します。

図6-1 SSLハンドシェイク

図6-1の説明は次にあります
「図6-1 SSLハンドシェイク」の説明

6.2 Oracle Fusion MiddlewareにおけるSSLについて

この項では、Oracle Fusion MiddlewareにおけるSSLについて説明します。これらの項目が含まれます。

6.2.1 Oracle Fusion MiddlewareアーキテクチャにおけるSSL

図6-2 Oracle Fusion MiddlewareにおけるSSL

図6-2の説明は次にあります
「図6-2 Oracle Fusion MiddlewareにおけるSSL」の説明


注意:

  • 図6-2の「Oracle Enterprise Manager」は、Fusion Middleware Controlのユーザー・インタフェースを指します。

  • opmnなどのその他の管理ツールは、特定のタスクで使用できます。


図6-2で示されるOracle Fusion Middlewareアーキテクチャにおいて、丸付きの番号はSSLを有効にできるエンドポイントを表します。それぞれのエンドポイントの構成の詳細は、次の項目を参照してください。

  1. 第6.4.2.1項「Fusion Middleware Controlを使用したOracle Web CacheでのインバウンドSSLの有効化」および第6.4.2.2項「WLSTを使用したOracle Web CacheでのインバウンドSSLの有効化」

  2. 第6.4.2.3項「Fusion Middleware Controlを使用したOracle Web CacheでのアウトバウンドSSLの有効化」および第6.4.2.4項「WLSTを使用したOracle Web CacheからのアウトバウンドSSLのウォレットの指定」

  3. 第6.4.3.1項「Fusion Middleware Controlを使用したOracle HTTP Server仮想ホストへのインバウンド・リクエストでのSSLの有効化」および第6.4.3.2項「WLSTを使用したOracle HTTP Server仮想ホストへのインバウンド・リクエストでのSSLの有効化」

  4. 第6.4.3.3項「Oracle HTTP Serverからのアウトバウンド・リクエストでのSSLの有効化」

  5. 第6.5.1.1項「Oracle WebLogic ServerへのインバウンドSSL」

  6. LDAPサーバーへのアウトバウンド接続は、Oracle Platform Security ServicesまたはOracle WebLogic Serverから発生します。

    1. 第6.5.1.2.1項「Oracle Platform Security ServicesからのLDAPへのアウトバウンドSSL」

    2. 第6.5.1.2.3項「LDAP認証プロバイダからのLDAPへのアウトバウンドSSL」

  7. 第6.6.1.1項「Fusion Middleware Controlを使用したOracle Internet DirectoryリスナーでのインバウンドSSLの有効化」および第6.6.1.2項「WLSTを使用したOracle Internet DirectoryリスナーでのインバウンドSSLの有効化」

  8. 第6.6.3.2項「データソースでのSSLの有効化」

  9. 第6.6.3.1項「Oracle DatabaseでのSSLの有効化」

  10. 第6.5.6項「アプリケーションのクライアント側のSSL」

  11. 第6.5.2項「Oracle SOA SuiteでのSSLの構成」

  12. 第6.5.3項「Oracle WebCenter PortalのSSLの構成」

  13. 第6.3.3項「WLSTコマンドライン・ツール」

  14. 第6.6.1.3項「Oracle Internet DirectoryからOracle DatabaseへのアウトバウンドSSLの有効化」

  15. 第6.6.3.1項「Oracle DatabaseでのSSLの有効化」

また、アイデンティティ管理コンポーネントでSSLを構成することもできます。詳細は、次の項目を参照してください。

キーストアおよびウォレット

キーストアおよびウォレットはSSL構成の中心となり、これらを使用して証明書および鍵を保存します。

詳細は、第6.2.2項「キーストアおよびOracleウォレット」を参照してください。

6.2.2 キーストアおよびOracleウォレット

Oracle Fusion Middlewareでは、鍵と証明書の2つのタイプのキーストアをサポートしています。

  • JKSベースのキーストアとトラストストア

  • Oracleウォレット

11g リリース1(11.1.1)では、すべてのJavaコンポーネントおよびアプリケーションはJKSキーストアを使用します。このように、Oracle WebLogic Server上で稼働するすべてのJavaコンポーネントおよびアプリケーションは、JKSベースのキーストアおよびトラストストアを使用します。

次のシステム・コンポーネントでは、引き続きOracleウォレットを使用します。

  • Oracle HTTP Server

  • Oracle Web Cache

  • Oracle Internet Directory

Fusion Middleware ControlまたはコマンドラインWLSTおよびorapkiインタフェースを使用して、これらのシステム・コンポーネントのウォレットとその証明書を管理できます。Fusion Middleware ControlまたはWLSTのいずれかを使用して、これらのコンポーネントのリスナーでSSLを有効化できます。

Oracle Virtual DirectoryはJKSベースのキーストアを使用します。Fusion Middleware ControlまたはWLSTを使用して、Oracle Virtual DirectoryのJKSキーストアとその証明書を管理できます。Fusion Middleware ControlまたはWLSTのいずれかを使用して、Oracle Virtual DirectoryのリスナーでSSLを有効化できます。

JDKのkeytoolユーティリティでは、Java EEアプリケーションのOracle WebLogic Serverリスナーが使用するキーストアを管理します。このユーティリティがこれらのキーストアを管理する唯一のキーストア・ツールになります。これを実行するためのグラフィカル・ユーザー・インタフェースはありません。

これらのストアのタイプ、およびどのストアのタイプをいつ使用するかについては、第6.1.3項「キーストアおよびウォレット」を参照してください。


関連項目:

キーストアの管理は、Oracle Fusion Middlewareにおける鍵と証明書の格納に関する項を参照してください。


6.2.3 認証モード

サポートされている認証モードは、次のとおりです。

  • 認証なしモードでは、サーバーもクライアントも認証は不要です。

    このモードは、匿名SSL/認証なし/Diffie-Hellmanなどと呼ばれています。このモードはセキュアではないと見なされます。

  • サーバー認証モードでは、クライアントに対してサーバー自身の認証が行われます。

    このモードは、一方向SSL/サーバー認証とも呼ばれています。

  • 相互認証モードでは、サーバーに対してクライアント自身の認証が行われ、クライアントに対してサーバー自身の認証が行われます。

    このモードは、双方向SSL/クライアント認証とも呼ばれています。

  • オプションのクライアント認証モードでは、クライアントに対してサーバー自身の認証が行われますが、サーバーに対してはクライアント自身の認証を行うことも行わないこともできます。クライアント自身の認証を行わなくても、SSLセッションは機能します。

6.2.4 SSL構成用ツール

Oracle Fusion Middlewareでは、一般的なツールと拡張ツールの2種類の構成ツールを使用します。

一般的なツール

  • Fusion Middleware Control

  • WLSTコマンドライン・インタフェース

  • Oracle WebLogic Server管理コンソール

  • keytoolコマンドライン・ツール

これらのツールを使用して、Oracle Fusion Middlewareの任意のリスナーまたはコンポーネントでSSLを構成したり、Oracle WalletやJKSキーストアを管理できます。

このリストの最初の3つのツールは、コンポーネントがアプリケーション・サーバー・ドメインに関連付けられている場合(コンポーネントがスタンドアロン・インストールではない場合)に使用できます。

拡張ツール

  • Oracle Wallet Managerグラフィカル・ユーザー・インタフェース

  • orapkiコマンドライン・インタフェース

これらのツールは、スタンドアロンWeb層およびスタンドアロンOracle Internet Directoryインストールのウォレットの管理に必要です。

また、これらのツールを使用して、ファイルベースのCRL、PKCS11ベースのウォレットの管理などの高度な機能を構成できます。


関連項目:

キーストアの管理は、Oracle Fusion Middlewareにおける鍵と証明書の格納に関する項を参照してください。


6.3 構成ツールでのSSLの構成

Oracle Fusion Middleware構成ではいくつかのツールを使用できます。この項では、これらのツールでSSLを構成して、それをSSLが有効なOracle WebLogic Serverに接続できるようにする方法について説明します。


関連項目:

Oracle WebLogic ServerでのインバウンドSSLの有効化の詳細は、第6.5.1.1項を参照してください。


すべての構成ツールの一覧は、第6.2.4項「SSL構成用ツール」を参照してください。

この項の項目は次のとおりです。

6.3.1 Oracle Enterprise Manager Fusion Middleware Control

次の手順に従います。

  • Fusion Middleware ControlがデプロイされているOracle WebLogic ServerインスタンスでSSLポートが有効なことを確認し、(Fusion Middleware Controlを起動する)ブラウザがサーバー証明書を信頼していることを確認します。

  • ここで、「https://host:port」形式でSSLベースのURLを使用してFusion Middleware Controlを起動します。

6.3.2 Oracle WebLogic Server管理コンソール

Oracle WebLogic ServerインスタンスでSSLポートが有効なことを確認します。ここで、URLにSSLポートを指定して管理コンソールを起動します。証明書が信頼できないという警告が表示される場合がありますが、この証明書を受け入れて続行します。

6.3.3 WLSTコマンドライン・ツール

WLSTでのSSLの構成の詳細は、次の手順を実行します。

  1. WLSTシェルを起動します。

  2. WLSTコマンドを実行します。

    help('connect')
    

ヘルプ・テキストの説明にある手順に従って、SSLモードでWLSTシェルを設定します。


関連項目:

WLSTの使用の詳細は、第6.9項を参照してください。


6.4 Web層でのSSLの構成

この項の項目は次のとおりです。


注意:

  • この項の内容は、Oracle WebLogic Serverドメインに関連したWeb層に適用されます。スタンドアロンWeb層インストールの詳細は、『Oracle Fusion Middleware Oracle Web Cache管理者ガイド』のHTTPSリクエストに対するOracle Web Cacheの構成に関する説明を参照してください。

  • これらの項目の表示順は、SSLが有効化される順序ではありません(この順序はトポロジによって異なります)。これらの項目は、フロントエンドのコンポーネントから開始するように配置されています。


6.4.1 ロード・バランサの構成

ロード・バランシング・デバイスに固有の手順を使用して、Oracle Fusion Middleware環境のロード・バランサを構成します。

6.4.2 Oracle Web CacheエンドポイントでのSSLの有効化

この項では、Fusion Middleware ControlおよびWLSTを使用してOracle Web Cacheのリスニング・エンドポイントでSSLを有効にする方法について説明します。

6.4.2.1 Fusion Middleware Controlを使用したOracle Web CacheでのインバウンドSSLの有効化

次の手順を実行して、Oracle Web Cacheリスニング・エンドポイントへのインバウンド・トラフィックでSSLを有効にすることができます。


注意:

この情報は、インバウンド通信にのみ適用されます。Oracle Web CacheからOracle HTTP Serverへのアウトバウンド・トラフィックでのSSLの有効化については、第6.4.2.3項「Fusion Middleware Controlを使用したOracle Web CacheでのアウトバウンドSSLの有効化」を参照してください。


  1. 左側のナビゲーション・ペインでOracle Web Cacheインスタンスを選択します。

  2. 必要に応じて、「Oracle Web Cache」→「セキュリティ」→「ウォレット」にナビゲートして、ウォレットを作成します。

    ウォレットの作成とメンテナンスは、第8章「キーストア、ウォレットおよび証明書の管理」を参照してください。

  3. Oracle Web Cache」→「セキュリティ」→「SSL構成」にナビゲートします。

    「SSL構成」ページには、2つの情報が表示されます。

    wcssl1.gifの説明が続きます
    図wcssl1.gifの説明

    上の表には、リスニング・エンドポイントのインバウンド設定のリストが表示されます。「SSL有効」列のチェックは、エンドポイントがSSLに構成されていることを示します。

    ページの下部は、アウトバウンドSSL構成を示します。アウトバウンドSSLの詳細は、第6.4.2.3項「Fusion Middleware Controlを使用したOracle Web CacheでのアウトバウンドSSLの有効化」を参照してください。

  4. エンドポイントを選択して、「編集」をクリックします。

    wcssl2.gifの説明が続きます
    図wcssl2.gifの説明

    「ポートの編集」ページが表示されます。このページには、2つのセクションが含まれます。ポートやIPアドレスなどの一般的な詳細情報が表示される上のセクションと、SSLパラメータを構成する下のセクションになっています。

  5. SSLを無効にするには、「SSLの有効化」の選択を解除し、「Oracle Web Cache」→「コントロール」→「再起動」にナビゲートしてコンポーネント・インスタンスを再起動します。

  6. このエンドポイントでSSLを有効にするには、「SSLの有効化」を選択します。次に、SSL構成パラメータを入力します。

    • ドロップダウン・リストからOracleウォレットを選択します。


      注意:

      ウォレットにサーバー証明書とそれに対応するCA証明書が含まれていることを確認してください。


    • SSL認証のタイプを選択します。

    • プロトコルのバージョンを選択します(認証の選択により、選択可能なオプションが決まります)。

  7. OK」をクリックします。

  8. Windowsプラットフォームの場合にのみ、Windowsエクスプローラを開いて、cwallet.ssoファイルの場所に移動します。「プロパティ」→「セキュリティ」で、「グループ名またはユーザー名」にSYSTEMを追加します。

  9. Oracle Web Cache」→「コントロール」→「再起動」にナビゲートして、Oracle Web Cacheインスタンスを再起動します。

6.4.2.2 WLSTを使用したOracle Web CacheでのインバウンドSSLの有効化

WLSTコマンドライン・ツールを使用して、Oracle Web Cacheへのインバウンド・トラフィックでSSLを有効にすることができます。

WLSTを使用したサーバー認証モードでのOracle Web CacheインバウンドのSSLの有効化

次の手順に従います。


関連項目:

この手順で示されている各コマンド・パラメータの定義など、WLSTコマンドの使用の詳細は、第6.9項を参照してください。


  1. 次のコマンドを実行して、このOracle Web Cacheインスタンスのリスニング・エンドポイントを確認します。

    listListeners('inst1','wc1')
    

    このコマンドにより、このインスタンスのすべてのリスニング・エンドポイントがリストされます。SSLを構成する必要があるエンドポイントを1つ選択します。たとえば、CACHE.index1.LISTEN.index1という名前のエンドポイントを選択します。


    関連項目:

    WLSTの使用の詳細は、第6.9項を参照してください。


  2. SSLプロパティでリスニング・エンドポイントを構成します。

    configureSSL('inst1',
       'wc1',
       'webcache',
       'CACHE.index1.LISTEN.index1')
    

    注意:

    • configureSSLでは、すべてのSSL属性のデフォルトを使用します。詳細は、表6-5を参照してください。

    • パラメータとしてプロパティ・ファイルをconfigureSSLに指定することもできます。詳細は、表6-4を参照してください。


  3. Windowsプラットフォームの場合にのみ、Windowsエクスプローラを開いて、cwallet.ssoファイルの場所に移動します。「プロパティ」→「セキュリティ」で、「グループ名またはユーザー名」にSYSTEMを追加します。

6.4.2.3 Fusion Middleware Controlを使用したOracle Web CacheでのアウトバウンドSSLの有効化

アウトバウンドOracle Web Cacheとは、Oracle Web CacheからOracle HTTP Serverへのトラフィックを表します。

Oracle Web Cacheからのアウトバウンド・トラフィックのSSLを設定するには、アウトバウンドSSLのウォレットの選択とSSLの構成という、2つの側面があります。

ウォレットの選択

次の手順に従います。

  1. Oracle Web Cache」→「セキュリティ」→「SSL構成」にナビゲートします。

    wcssl1.gifの説明が続きます
    図wcssl1.gifの説明

  2. ページの下部で、「ウォレットの変更」をクリックすると、このリスナーで使用可能なウォレットが表示されます。

    wcssl3.gifの説明が続きます
    図wcssl3.gifの説明

    注意: 証明書に署名したルートCA証明書(Webキャッシュが接続するOHSなどのコンポーネント用)は、このウォレットにロードされる必要があります。詳細は8.4.7.5項を参照してください。

  3. アウトバウンドSSLの目的のウォレットを選択して、「OK」をクリックします。

SSLの構成

次の手順に従います。

  1. Oracle Web Cacheインスタンスにナビゲートしてから、「管理」→「オリジナル・サーバー」にナビゲートします。

    このページには、このOracle Web Cacheインスタンスと通信可能なOracle HTTP Serverが表示されます。たとえば、Oracle Web Cacheが2つの異なるOracle HTTP Serverと対話できる場合、表には2つの行が表示されます。

    wcssl4.gifの説明が続きます
    図wcssl4.gifの説明

    この例では、Oracle Web Cacheインスタンスはこのホストおよびポート上でオリジナル・サーバーとの通信に現在非SSLが構成されています。

  2. このオリジナル・サーバーへのアウトバウンド・トラフィックでSSLを有効にするには、行を選択して「編集」をクリックします。

  3. 「オリジナル・サーバーの編集」ページが表示されます。

    wcssl5.gifの説明が続きます
    図wcssl5.gifの説明

  4. 「プロトコル」ドロップダウン・ボックスを使用して、プロトコルを「https」に変更します。

  5. OK」をクリックします。

  6. Windowsプラットフォームの場合にのみ、Windowsエクスプローラを開いて、cwallet.ssoファイルの場所に移動します。「プロパティ」→「セキュリティ」で、「グループ名またはユーザー名」にSYSTEMを追加します。

  7. Oracle Web Cache」→「コントロール」→「再起動」にナビゲートして、Oracle Web Cacheインスタンスを再起動します。

    これで、Oracle Web Cacheはオリジナル・サーバーとSSLで通信するように構成されました。


注意:

このページでオリジナル・サーバー設定を編集する場合、Oracle HTTP ServerがこのポートにおいてSSLモードでリスニングしていることを確認します。


6.4.2.4 WLSTを使用したOracle Web CacheからのアウトバウンドSSLのウォレットの指定


関連項目:

この手順で示されている各コマンド・パラメータの定義など、WLSTコマンドの使用の詳細は、第6.9項を参照してください。


Oracle Web CacheからアウトバウンドSSL接続で使用されるウォレットを変更するには、このコマンドを次のように使用します。

configureSSL('inst1',
   'wc1',
   'webcache',
   'CACHE.index0.CLIENTSSL',
   'property-file.prop')

説明:

  • inst1はアプリケーション・サーバー・インスタンスの名前です。

  • wc1はOracle Web Cacheインスタンスの名前です。

  • webcacheはコンポーネント・タイプです。

  • CACHE.index0.CLIENTSSLはクライアントSSLのリスナー名です。

  • property-file.propには、次が含まれます。

    KeyStore=wallet-path
    

6.4.3 Oracle HTTP Server仮想ホストでのSSLの有効化

この項では、Oracle WebLogic Server環境で動作しているOracle HTTP Server仮想ホストのSSL構成の管理方法について説明します。


注意:

スタンドアロン・モードのOracle HTTP Serverの詳細は、『Oracle Fusion Middleware Oracle HTTP Server管理者ガイド』を参照してください。


インバウンド・トラフィック:

アウトバウンド・トラフィック:

6.4.3.1 Fusion Middleware Controlを使用したOracle HTTP Server仮想ホストへのインバウンド・リクエストでのSSLの有効化

次の手順を実行して、Oracle HTTP Server仮想ホストへのインバウンド・トラフィックでSSLを有効にすることができます。

  1. 左側のナビゲーション・ペインでOracle HTTP Serverインスタンスを選択します。

  2. 必要に応じて、「Oracle HTTP Server」→「セキュリティ」→「ウォレット」にナビゲートします。

    ウォレットの作成とメンテナンスは、第8章「キーストア、ウォレットおよび証明書の管理」を参照してください。

  3. HTTP Server」→「管理」→「仮想ホスト」にナビゲートします。

    このページには、現在構成されているホスト、およびそれらがhttpまたはhttpsに構成されているかが表示されます。

    ohsssl1.gifの説明が続きます
    図ohsssl1.gifの説明

  4. 更新する仮想ホストを選択して、「構成」→「SSL構成」をクリックします。(注意: 新規仮想ホストを作成する場合は、『Oracle Fusion Middleware Oracle HTTP Server管理者ガイド』を参照してください。)

    ohsssl2.gifの説明が続きます
    図ohsssl2.gifの説明

    「SSL構成」ページが表示されます。

  5. SSLの有効化」の選択を解除すると、httpsポートをhttpポートに変換できます。

    現在httpを使用している仮想ホストでSSLを構成するには:

    • SSLの有効化」ボックスを選択します。

    • ドロップダウン・リストからウォレットを選択します。

      ohsssl3.gifの説明が続きます
      図ohsssl3.gifの説明

    • 「サーバーSSLプロパティ」から、SSL認証タイプ、使用する暗号スイートおよびSSLプロトコル・バージョンを選択します。


      注意:

      ほとんどの状況ではデフォルト値が最適です。



      注意:

      • ここでは、Fusion Middleware Controlに証明書があることを想定しています。証明書がorapkiまたはOracle Wallet Managerで作成された場合は、最初に証明書をインポートします(第8.4.4.9項を参照)。

      • 選択した認証タイプにより使用可能な暗号スイートが決まり、選択した暗号スイートにより使用可能なプロトコル・バージョンが決まります。暗号およびプロトコル・バージョンの詳細は、第6.9.28項を参照してください。


  6. OK」をクリックして変更内容を適用します。

  7. Windowsプラットフォームの場合にのみ、Windowsエクスプローラを開いて、cwallet.ssoファイルの場所に移動します。「プロパティ」→「セキュリティ」で、「グループ名またはユーザー名」にSYSTEMを追加します。

  8. Oracle HTTP Server」→「コントロール」→「再起動」にナビゲートして、Oracle HTTP Serverインスタンスを再起動します。

  9. ブラウザ・セッションを開き、SSLを有効にしたポート番号に接続します。

6.4.3.2 WLSTを使用したOracle HTTP Server仮想ホストへのインバウンド・リクエストでのSSLの有効化

次の手順に従います。

  1. 次のコマンドを実行して、このOracle HTTP Serverインスタンスの仮想ホストを確認します。

    listListeners('inst1','ohs1' )
    

    このコマンドにより、このインスタンスのすべての仮想ホストがリストされます。SSLを構成する必要がある仮想ホストを1つ選択します。たとえば、「vhost1」を選択できます。このコマンドの詳細は、『Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンス』を参照してください。

  2. SSLプロパティで仮想ホストを構成します。

    configureSSL('inst1',
       'ohs1',
       'ohs',
       'vhost1')
    

    注意:

    • configureSSLでは、すべてのSSL属性のデフォルトを使用します。詳細は、表6-5を参照してください。

    • パラメータとしてプロパティ・ファイルをconfigureSSLに指定することもできます。パラメータの詳細は、表6-4を参照してください。プロパティ・ファイルの使用例は、『Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンス』configureSSLを参照してください。

    • このコマンドの詳細は、第6.9項を参照してください。


  3. Windowsプラットフォームの場合にのみ、Windowsエクスプローラを開いて、cwallet.ssoファイルの場所に移動します。「プロパティ」→「セキュリティ」で、「グループ名またはユーザー名」にSYSTEMを追加します。

6.4.3.3 Oracle HTTP Serverからのアウトバウンド・リクエストでのSSLの有効化

mod_wl_ohsを構成してOracle HTTP Serverからのアウトバウンド・リクエストでのSSLを有効化します。

一方向SSL

手順は次のとおりです。

  1. 証明書を含むOracle WebLogic Serverのカスタム・キーストアを生成します(第6.5.1項「Oracle WebLogic ServerでのSSLの構成」を参照してください)。

  2. ステップ1のOracle WebLogic Serverで使用される証明書をOracle HTTP Serverウォレットに、信頼できる証明書としてインポートします。このタスクには、WLSTやFusion Middleware Controlなどの使用可能なユーティリティを使用できます。(注意: ここで説明するウォレットは、Oracle HTTP Serverリスニング・ポートがSSL用に使用するウォレットです。Oracle WebLogic Server証明書に署名した信頼性できる(ルート)CA証明書は、このウォレットに格納されている必要があります。信頼性できる証明書のインポートの詳細は、第8.3.5項を参照してください。)

  3. Oracle HTTP Server構成ファイルのINSTANCE_HOME/config/OHS/ohs1/ssl.confを編集して、mod_weblogicの下のSSL構成に次の行を追加します。

    WlSSLWallet  "$(ORACLE_INSTANCE}/config/COMPONENT_TYPE/COMPONENT_NAME/keystores/default"
    

    このdefaultは、ステップ2のOracle HTTP Serverウォレットの名前です。

    次にその構成の例を示します。

    <IfModule mod_weblogic.c>
    WebLogicHost myweblogic.server.com
    WebLogicPort 7002
    MatchExpression *.jsp
    SecureProxy On
    WlSSLWallet "$(ORACLE_INSTANCE)/config/OHS/ohs1/keystores/default"
    </IfModule>
    

    ファイルを保存して終了します。

  4. Windowsプラットフォームの場合にのみ、Windowsエクスプローラを開いて、cwallet.ssoファイルの場所に移動します。「プロパティ」→「セキュリティ」で、「グループ名またはユーザー名」にSYSTEMを追加します。

  5. Oracle HTTP Serverを再起動して変更を有効にします。詳細は、『Oracle Fusion Middleware Oracle HTTP Server管理者ガイド』を参照してください。

  6. ステップ1で生成されたカスタム・キーストアを使用するようにOracle WebLogic Serverインスタンスが構成され、別名が証明書の生成に使用される別名値を指していることを確認します。Oracle WebLogic Serverインスタンスを再起動します。

双方向SSL

mod_wl_ohsでは、双方向SSL通信もサポートします。双方向SSLを構成する手順は次のとおりです。

  1. 前の一方向SSLのステップ1から4を実行します。

  2. Oracle WebLogic Serverのトラストストアtrust.jksを生成します。

    (前の手順のステップ1で)一方向SSL用に作成されたキーストアは、信頼できる証明書を保存するために使用できますが、この手順で個別のトラストストアを作成することをお薦めします。

  3. Oracle HTTP Serverウォレットからユーザー証明書をエクスポートして、それをステップ2で作成したトラストストアにインポートします。

    エクスポートには、WLSTやFusion Middleware Controlなどの使用可能なユーティリティを使用できます。インポートにはkeytoolユーティリティを使用できます。

  4. Oracle WebLogic Server管理コンソールから、構成するサーバーの「キーストア」タブを選択します。

  5. ステップ2で作成したトラストストアのtrust.jksファイルの場所によりカスタム・トラストストアを設定します(完全な名前を使用します)。

  6. キーストア・タイプをJKSに設定し、キーストアの作成に使用されるパスフレーズを設定します。

  7. SSL」タブで、「信頼性のある認証局」が「カスタム信頼キーストアから」に設定されていることを確認します。

  8. Oracle WebLogic Serverが双方向SSL用に構成されていることを確認します。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のSSLの構成に関する説明を参照してください。

6.5 中間層でのSSLの構成

中間層では、次のようにSSLを使用します。

この項では、中間層でのSSLの構成について説明します。この項の項目は次のとおりです。

6.5.1 Oracle WebLogic ServerでのSSLの構成

この項では、アプリケーション・サーバーの構成について説明します。

6.5.1.1 Oracle WebLogic ServerへのインバウンドSSL

SSLを実装してOracle WebLogic Serverを保護する方法の詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

6.5.1.2 Oracle WebLogic ServerからのアウトバウンドSSL

この項では、Oracle WebLogic Serverからのアウトバウンド接続でSSLを有効にする方法について説明します。

6.5.1.2.1 Oracle Platform Security ServicesからのLDAPへのアウトバウンドSSL

この項では、LDAPディレクトリへのポリシー・ストア接続および資格証明ストア接続用にSSLを構成する方法について説明します(サーバー側とクライアント側が必要)。匿名および一方向SSLがサポートされます。

この項で参照するjps-config.xmlファイルの詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。

匿名SSL(サーバー側)

匿名認証モードでLDAPサーバーを起動します。

Oracle Internet Directoryの詳細は、第6.6.1.1項「Fusion Middleware Controlを使用したOracle Internet DirectoryリスナーでのインバウンドSSLの有効化」を参照してください。

別のディレクトリを使用している場合、LDAPサーバーのドキュメントを参照してこのタスクに関する情報を調べてください。

匿名SSL(クライアント側)

jps-config.xmlファイルでは、プロトコルをldapsに設定し、プロパティldap.urlに適切なポートを指定する必要があります。この情報は、ポリシー・ストア、資格証明ストア、キーストア、およびldap.urlを使用するその他のサービスに対して更新する必要があります。

一方向SSL(サーバー側)

前提条件: LDAPサーバーがSSLサーバー認証モードであること。

この手順の詳細は、Oracle Fusion Middleware Oracle Internet Directory管理者ガイドを参照してください。

一方向SSL(クライアント側)

クライアント側の構成が次のようになっている必要があります。

  1. LDAPの証明書を信頼するには、使用するトラスト・ストアを検索する場所をJVMが認識している必要があります。これを行うには、次のように設定します。

    -Djavax.net.ssl.trustStore=path_to_jks_file
    

    このプロパティは、JavaSEプログラム、またはJavaEE環境のサーバー起動プロパティに追加されます。

  2. jps-config.xmlファイルでは、プロトコルをldapsに設定し、プロパティldap.urlに適切なポートを指定する必要があります。この情報は、ポリシー・ストア、資格証明ストア、キーストア、およびldap.urlを使用するその他のサービスに対して更新する必要があります。

  3. keytoolを使用して、LDAPサーバーの証明書をステップ1で指定したトラスト・ストアにインポートします。

6.5.1.2.2 Oracle Platform Security ServicesからのOracleデータベースへのアウトバウンドSSL

一方向または双方向のSSL接続をデータベース・ベースのOPSSセキュリティ・ストアに設定できます。

データベース・サーバーとクライアントの構成の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。

6.5.1.2.3 LDAP認証プロバイダからのLDAPへのアウトバウンドSSL

Oracle WebLogic ServerでLDAP認証プロバイダを構成する場合、LDAPストアへの接続でSSLを使用するように指定できます。

次の手順を実行して、この認証プロバイダを構成します。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 左ペインで、「セキュリティ・レルム」を選択して、構成するレルムの名前をクリックします。

  3. プロバイダ」→「認証」を選択して、「新規」をクリックします。

  4. 名前」フィールドで、認証プロバイダの名前を入力します。

  5. タイプ」ドロップダウン・リストから、認証プロバイダのタイプを選択して「OK」をクリックします。

    たとえば、Oracle Internet Directoryを使用する場合、「OracleInternetDirectoryAuthenticator」を選択します。

  6. プロバイダ」→「認証」を選択して、その構成を行う新しい認証プロバイダの名前をクリックします。

  7. 認証プロバイダの「構成」ページの「共通」および「プロバイダ固有」タブで、目的の値を設定します。

    1. 「共通」タブ

      DefaultAuthenticatorを含むすべての認証プロバイダで、「制御フラグ」を「SUFFICIENT」に設定します。

    2. 「プロバイダ固有」タブ

      ホスト: ホスト名

      ポート: ポート番号

      プリンシパル: cn=orcladmin

      「資格証明」/「確認」: パスワード

      ユーザー・ベースDN: cn=Users,dc=us,dc=oracle,dc=com

      グループ・ベースDN: cn=Groups,dc=us,dc=oracle,dc=com

  8. 変更を保存してサーバーを再起動します。

6.5.1.2.4 データベースへのアウトバウンドSSL

Oracle WebLogic Serverとデータベースとの間でSSLを構成するには、次の2つの手順のセットが必要です。

  • データベースでのSSLリスナーの構成

  • Oracle WebLogic ServerのデータソースでのSSLの構成

Oracle DatabaseでのSSLリスナーの構成

データベースをSSLリスナーで構成するには、クライアント・ネットワーク構成ファイルで、サーバーのDNマッチングおよびTCP/IPをSSL接続できるように、プロトコルとしてサーバーの識別名(DN)とTCPSを指定する必要があります。サーバーDNマッチングでは、サーバー証明書からDNに対してサーバーのグローバル・データベース名をマッチングすることで、データベース・サーバーが接続時にクライアントに対するIDの偽装が防止されます。

クライアント・ネットワーク構成ファイルのtnsnames.oraおよびlistener.oraを手動で編集して、サーバーのDNとTCP/IPをSSLプロトコルに指定する必要があります。

詳細は、第6.6.3.1項「Oracle DatabaseでのSSLの有効化」を参照してください。


関連項目:

データベース・リスナー用のSSLの構成の詳細は、http://download.oracle.com/docs/cd/E11882_01/network.112/e10746/toc.htmにある『Oracle Database Advanced Security管理者ガイド』のSecure Sockets Layer認証の構成に関する説明を参照してください。


Oracle WebLogic ServerのデータソースでのSSLの有効化

第6.6.3.2項「データソースでのSSLの有効化」を参照してください。

6.5.2 Oracle SOA SuiteでのSSLの構成

Oracle SOA SuiteでのSSLの構成は、保護する接続のタイプによって異なります。

Oracle WebLogic ServerでのSSL

Oracle WebLogic Serverには次のようなSSL機能が含まれます。

  • コア・サーバーでのSSLの設定方法。

    詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

  • WebLogic WebサービスでのSSLの有効化方法。

    詳細は、『Oracle Fusion Middleware Oracle WebLogic Server WebLogic Webサービスの保護』を参照してください。

SOAコンポジットでのSSL

次のタスクでは、Oracle SOA Suiteアプリケーションも保護する必要があります。

  • SSLによるSOAコンポジットの保護

  • SOAコンポジット内におけるSSLで保護されたWebサービスへのアクセス

これらおよび関連項目については、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』を参照してください。

6.5.3 Oracle WebCenter PortalのSSLの構成

Oracle WebCenter PortalでのSSL接続の実装方法の詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal管理者ガイド』の次の項目を参照してください。

  • SSLによるContent Serverへのスペース接続の保護

  • SSLによるスペースへのブラウザ接続の保護

6.5.4 Oracle IdentityおよびAccess ManagementでのSSLの構成

中間層に配置されているOracle IdentityおよびAccess ManagementコンポーネントでSSLを構成できます。

6.5.4.1 Oracle Directory Integration PlatformでのSSLの構成

Oracle Directory Integration Platformを構成して、接続されたディレクトリとの通信にSSLを使用できます。Oracle Directory Integration Platformの次のSSLタスクの詳細は、Oracle Fusion Middleware Oracle Directory Integration Platform管理者ガイドに記載されています。

  • SSLモードの2サーバー専用認証用のOracle Directory Integration Platformの構成

  • Oracle Internet Directoryおよび接続されたディレクトリのSSL証明書の管理

  • SSLモードでのブートストラップ

  • SSLモードで同期するためのサードパーティのディレクトリ・コネクタの構成

  • SSLサーバー側認証によるOracle Internet Directoryの構成およびテスト

  • Oracle Internet DirectoryとMicrosoft Active Directoryとの間のSSL通信のテスト

6.5.4.2 Oracle Identity FederationでのSSLの構成

詳細は、Oracle Fusion Middleware Oracle Identity Federation管理者ガイドOracle Identity Federationに対するSSLの構成に関する項を参照してください。


注意:

Sun Microsystemsのkeytoolユーティリティを使用して、Oracle Identity FederationのSSL構成に必要なキーストアおよび証明書を管理します。


6.5.4.3 Oracle Directory Services ManagerでのSSLの構成

Oracle Directory Services Managerを構成して、接続されたディレクトリとの通信にSSLを使用できます。Oracle Directory Services Managerの次のSSLタスクの詳細は、Oracle Fusion Middleware Oracle Virtual Directory管理者ガイドに記載されています。

  • SSLを使用したOracle Directory Services Managerからのディレクトリ・サーバーへのログイン

  • Oracle Directory Services Managerのキーストアの管理

  • Oracle Virtual DirectoryにおけるOracle Directory Services Managerの証明書の保存

6.5.5 Oracle Reports、Forms、DiscovererおよびPortalでのSSLの有効化

この項の項目は次のとおりです。

6.5.5.1 Oracle ReportsでのSSL

Oracle ReportsでSSLを有効にするには、Oracle WebLogic ServerのフロントエンドとなるコンポーネントでSSLを有効にする必要があります。

たとえば、Oracle ReportsをホストするOracle WebLogic ServerのフロントエンドとなるOracle HTTP ServerとOracle Web Cacheがある場合、次を構成する必要があります。


注意:

エンドツーエンドSSLを設定する場合のみ、これらの手順が必要です。ほとんどの場合、リクエストを取得する最初のコンポーネントにのみSSLを有効にするだけで十分です。他のコンポーネントは通常、イントラネット内にあるからです。

たとえば、リクエストをOracle Web Cacheに送信する場合、最初の手順のみ実行が必要です。リクエストをOracle HTTP Serverに送信する場合、2番目の手順のみ実行が必要です。使用するトポロジに応じて手順を選択します。


また、Fusion Middleware ControlのOracle Reportsは、Reports Servletにアクセスしてデータを検索します。この通信をSSLを介して行う必要がある場合、『Oracle Fusion Middleware Oracle Reports ServicesレポートWeb公開ガイド』で説明されている手動手順を完了する必要があります。

6.5.5.2 Oracle FormsでのSSL

Oracle FormsでSSLを有効にするには、Oracle WebLogic ServerのフロントエンドとなるコンポーネントでSSLを有効にする必要があります。

たとえば、Oracle FormsをホストするOracle WebLogic ServerのフロントエンドとなるOracle HTTP ServerとOracle Web Cacheがある場合、次を構成する必要があります。


注意:

エンドツーエンドSSLを設定する場合のみ、これらの手順が必要です。ほとんどの場合、リクエストを取得する最初のコンポーネントにのみSSLを有効にするだけで十分です。他のコンポーネントは通常、イントラネット内にあるからです。

たとえば、リクエストをOracle Web Cacheに送信する場合、最初の手順のみ実行が必要です。リクエストをOracle HTTP Serverに送信する場合、2番目の手順のみ実行が必要です。使用するトポロジに応じて手順を選択します。


6.5.5.3 Oracle DiscovererでのSSL

httpsを介してOracle Discovererを実行するには特定のタスクが必要です。これには、Oracle BI DiscovererをホストするOracle WebLogic ServerのフロントエンドとなるOracle HTTP Server仮想ホストやOracle Web CacheでSSLを有効化することなどが含まれます。

詳細は、Oracle Fusion Middleware Oracle Business Intelligence Discoverer構成ガイドのDiscovererでのエンドツーエンドSecure Sockets Layerの構成に関する項を参照してください。

6.5.5.4 Oracle PortalでのSSL

Oracle Portalでは、多数の様々なコンポーネント(Parallel Page Engine、Oracle HTTP Server、Oracle Web Cacheなど)を使用します。それぞれのコンポーネントは、HTTP通信においてクライアントまたはサーバーとして機能する場合があります。そのため、中間層のOracle Portalを含む各コンポーネントは、個々にHTTPSで構成されます。

詳細は、『Oracle Fusion Middleware Oracle Portal管理者ガイド』を参照してください。

6.5.6 アプリケーションのクライアント側のSSL

SSL対応のアプリケーションの記述方法については、『Oracle Fusion Middleware Oracle WebLogic Serverセキュリティのプログラミング』のJavaクライアントでのSSL認証の使用に関する項を参照してください。

ベスト・プラクティスは、第6.8.2項「アプリケーション開発者のベスト・プラクティス」を参照してください。

6.6 データ層でのSSLの構成

この項の項目は次のとおりです。

6.6.1 Oracle Internet DirectoryリスナーでのSSLの有効化

インストール時には、Oracle Internet Directoryノードは認証なしモードでSSLが有効に設定されています。

この項では、Fusion Middleware ControlおよびWLSTコマンドライン・ツールを使用して、Oracle Internet DirectoryリスナーでSSLを有効にする方法について説明します。


関連項目:

Oracle Internet Directory SSL相互認証クライアントおよびサーバー認証の設定の詳細は、https://support.oracle.com/のMy Oracle Supportにあるノート1311791.1を参照してください。


6.6.1.1 Fusion Middleware Controlを使用したOracle Internet DirectoryリスナーでのインバウンドSSLの有効化

この例では次の手順により、Fusion Middleware Controlを使用してOracle Internet Directoryのインスタンスに対して認証なしモードでSSLを有効化します。

  1. 左側のナビゲーション・ペインでOracle Internet Directoryインスタンスを選択します。

  2. 「Oracle Internet Directory」→「管理」→「サーバー・プロパティ」にナビゲートします。

    oid2a.gifの説明が続きます
    図oid2a.gifの説明

  3. SSL設定の変更」をクリックします。

  4. 「SSL設定」ダイアログで、次の操作を実行します。

    oid3a.gifの説明が続きます
    図oid3a.gifの説明

    • SSLの有効化」を選択します。

    • 「SSL認証」を「認証なし」に設定します。

    • 「暗号スイート」を「すべて」に設定します。

    • 「SSLプロトコル・バージョン」を「v3」に設定します。

    • OK」をクリックします。

  5. Oracle Internet Directory」→「コントロール」→「再起動」にナビゲートして、Oracle Internet Directoryインスタンスを再起動します。

  6. インスタンスが正しくSSL有効に設定されていることを確認するには、次の形式でldapbindコマンドを実行します。

    ldapbind -D cn=orcladmin
       -U 1
       -h host
       -p SSL_port
    

    注意:

    -U 1は、認証なしモードを表します。


スタンドアロン環境のOracle Internet Directoryリスナーの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』を参照してください。

その他の認証モードでのSSLの有効化

その他の認証モードでSSLを有効にする手順も同様です。異なる点は、「SSL設定」ダイアログで適切な認証タイプを設定することです。


注意:

その他の認証タイプでは、Oracleウォレットが必要です。


6.6.1.2 WLSTを使用したOracle Internet DirectoryリスナーでのインバウンドSSLの有効化

次のようにリスナーをSSLプロパティでno-authモードに構成します。


注意:

Oracle Internet Directoryのポート名は、常にsslport1です。


configureSSL('inst1',
   'oid1',
   'oid',
   'sslport1')

注意:

  • configureSSLでは、すべてのSSL属性のデフォルトを使用できます。詳細は、表6-5を参照してください。

  • パラメータとしてプロパティ・ファイルをconfigureSSLに指定することもできます。詳細は、表6-4を参照してください。

  • 第6.9項も参照してください。


その他の認証モードでのSSLの有効化

これは、パラメータにプロパティ・ファイルを使用して、適切な認証タイプ・パラメータ値を指定し、configureSSLコマンドを実行して行います。詳細は、Oracle Fusion Middleware Oracle Internet Directory管理者ガイドを参照してください。

6.6.1.3 Oracle Internet DirectoryからOracle DatabaseへのアウトバウンドSSLの有効化

Oracle Internet DirectoryからOracle DatabaseへのSSL接続を構成するには、2つの手順のセットが必要です。

データベースでのSSLの構成

Oracle DatabaseをSSLで構成する手順は、第6.6.3.1項「Oracle DatabaseでのSSLの有効化」で説明されています。

アウトバウンドOracle Internet Directoryの構成

次の手順を実行して、Oracle Internet DirectoryからOracle Databaseへのアウトバウンド・トラフィックでSSLを構成します。

  1. opmnctl構文を使用して、データベースへのアウトバウンド・トラフィックをSSLで構成するOracle Internet Directoryサーバー・インスタンスを停止します。

    $ORACLE_INSTANCE/bin/opmnctl stopproc ias-component=componentName
    

    次に例を示します。

    $ORACLE_INSTANCE/bin/opmnctl stopproc ias-component=oid1
    
  2. Oracle Internet Directoryサーバー・インスタンスに接続するデータベースのSecurity Socket Layer認証を構成します。

    詳細は、『Oracle Database Advanced Security管理者ガイド』を参照してください。

  3. 必要に応じて、データベースやリスナーを再起動します。

  4. このopmnctl構文を使用して、Oracle Internet Directoryサーバー・インスタンスを起動します。

    $ORACLE_INSTANCE/bin/opmnctl startproc ias-component=componentName
    

    次に例を示します。

    $ORACLE_INSTANCE/bin/opmnctl startproc ias-component=oid1
    

注意:

認証なしモードのみがサポートされます。


6.6.2 Oracle Virtual DirectoryリスナーでのSSLの有効化

この項では、Oracle Virtual DirectoryのインスタンスでSSLを有効にする方法について説明します。

これらの項目に関する追加情報は、Oracle Fusion Middleware Oracle Virtual Directory管理者ガイドに記載されています。

  • Fusion Middleware Controlを使用したリスナーでのSSLの構成

  • WLSTを使用したリスナーでのSSLの構成

  • Oracle Virtual DirectoryとOracle Internet Directoryとの間の相互認証SSL接続の構成

6.6.2.1 Fusion Middleware Controlを使用したOracle Virtual DirectoryでのSSLの有効化

SSLを有効にする手順は次のとおりです(例は、server-authモードの説明です)。

  1. 左側のナビゲーション・ペインでOracle Virtual Directoryインスタンスを選択します。

  2. Oracle Virtual Directory」→「セキュリティ」→「キーストア」にナビゲートしてこの操作で使用するキーストアを選択します。

    表示されたキーストアのリストから選択します。新しいキーストアを生成する必要がある場合、Fusion Middleware Controlを使用したキーストアの作成に関する項を参照してください。

  3. リスナーでSSLを有効にするには、「Oracle Virtual Directory」→「管理」→「リスナー」にナビゲートします。

  4. LDAP SSLエンドポイントのリスナーを選択して、「編集」をクリックします。

    ovd2a.gifの説明が続きます
    図ovd2a.gifの説明

    「リスナーの編集」ページが表示されます。

    ovd3a.gifの説明が続きます
    図ovd3a.gifの説明

  5. SSL設定の変更」をクリックします。

  6. 「SSL設定」ダイアログで、次の操作を実行します。

    ovd4a.gifの説明が続きます
    図ovd4a.gifの説明

    • SSLの有効化」を選択します。

    • 「サーバー・キーストア名」で、ステップ2で作成したキーストアを選択します(OVDtestJksなど)。

    • 「サーバー・キーストアのパスワード」で、ステップ2で指定したキーストア・パスワードを入力します。

    • 「サーバーTruststore名」で、ステップ2で作成したキーストアを選択します(OVDtestJksなど)。

    • 「サーバー・トラストストアのパスワード」で、ステップ2で指定したキーストア・パスワードを入力します。

    • 「拡張SSL設定」を開きます。

    • 「SSL認証」で、「サーバー認証」を選択します。これはデフォルト設定です。

    • 「暗号スイート」で、適切な暗号スイートを選択します(この例では、「すべて」)。

    • プロトコル・バージョンを選択します。

    • OK」をクリックします。

  7. Oracle Virtual Directory」→「コントロール」→「停止」にナビゲートしてから「起動」を選択して、Oracle Virtual Directoryインスタンスを停止して起動します。

  8. インスタンスが正しくSSL有効に設定されていることを確認するには、次の形式でldapbindコマンドを実行します。

    ldapbind -D cn=orcladmin
       -U 2
       -h host
       -p SSL_port
    -W "file:// DIRECTORY_SSL_WALLET" 
    

    注意:

    • -U 2は、サーバー認証モードを表します。

    • DIRECTORY_SSL_WALLETは、ウォレット・ファイルのパスです(ウォレット・ファイル名は含めません)。

    • このウォレットが存在し、このウォレットに、サーバー証明書を発行したCAの信頼できる証明書が格納されている必要があります。


その他の認証モードでのSSLの有効化

その他の認証モードでSSLを有効にする手順も同様です。異なる点は、「SSL設定」ダイアログで適切な認証タイプを設定することです。


注意:

LDAPリスナーでSSLを構成する場合、SSL通信はldapbindを使用して検証します。httpリスナーの場合は、ブラウザを使用して検証します。


6.6.2.2 WLSTを使用したOracle Virtual DirectoryリスナーでのSSLの有効化

次の手順を実行して、サーバー認証モードでリスナーを構成します。

  1. 次のコマンドを実行して、このOracle Virtual Directoryインスタンスのリスナーを確認します。

    listListeners('inst1','ovd1' )
    

    このコマンドにより、インスタンスinst1およびコンポーネント名ovd1のすべてのリスナーがリストされたら、SSLを構成する必要があるリスナーを1つ選択します。たとえば、「LDAP SSL Endpoint」を選択します。

  2. Oracle Virtual DirectoryリスナーのSSL MBeanの名前を取得します。

    getSSLMBeanName('inst1',
       'ovd1',
       'ovd',
       'LDAP SSL Endpoint')
    

    このコマンドにより、指定されたインスタンス、コンポーネント名、コンポーネント・タイプおよびリスナーのSSL MBean名が返されます。

  3. 次のコマンドでMBeanのキーストアおよびトラストストアのパスワードを設定します。

    cd ('SSL_MBean_Name')
    set('KeyStorePassword',java.lang.String('password').toCharArray())
    set('TrustStorePassword',java.lang.String('password').toCharArray())
    
  4. SSLプロパティでリスナーを構成します。

    configureSSL('inst1',
       'ovd1',
       'ovd',
       'LDAP SSL Endpoint')
    

注意:

ステップ2とステップ3は、サーバー認証モードおよび相互認証モードでのみ必要です。


その他の認証モードでのSSLの有効化

これは、パラメータにプロパティ・ファイルを使用して、適切な認証タイプ・パラメータ値を指定し、configureSSLコマンドを使用して行います。詳細は、Oracle Fusion Middleware Oracle Virtual Directory管理者ガイドのOracle Virtual Directoryリスナーの作成と管理に関する項を参照してください。

6.6.3 データベースでのSSLの構成

この項の項目は次のとおりです。

6.6.3.1 Oracle DatabaseでのSSLの有効化

次の手順を実行して、OracleデータベースでSSLを有効にします。

  1. ルートCAとDBの証明書を作成します。次に例を示します。


    注意:

    本番で使用する場合、自己署名証明書はお薦めしません。本番ウォレットの取得の詳細は、自己署名付きウォレットのサード・パーティのウォレットへの変更に関する項を参照してください。


    mkdir root
    mkdir server
     
    # Create root wallet, add self-signed certificate and export
    orapki wallet create -wallet ./root -pwd password
    orapki wallet add -wallet ./root -dn CN=root_test,C=US -keysize 2048 -self_signed -validity 3650 -pwd password
    orapki wallet display -wallet ./root -pwd password
    orapki wallet export -wallet ./root -dn CN=root_test,C=US -cert ./root/b64certificate.txt -pwd password
     
    #Create server wallet, add self-signed certificate and export
    orapki wallet create -wallet ./server -pwd password
    orapki wallet add -wallet ./server -dn CN=server_test,C=US -keysize 2048 -pwd password
    orapki wallet display -wallet ./server -pwd password
    orapki wallet export -wallet ./server -dn CN=server_test,C=US -request ./server/creq.txt -pwd password
     
    # Import trusted certificates
    orapki cert create -wallet ./root -request ./server/creq.txt -cert ./server/cert.txt -validity 3650 -pwd password
    orapki cert display -cert ./server/cert.txt -complete
    orapki wallet add -wallet ./server -trusted_cert -cert ./root/b64certificate.txt -pwd password
    orapki wallet add -wallet ./server -user_cert -cert ./server/cert.txt -pwd password
    orapki wallet create -wallet ./server -auto_login -pwd password}}
    
  2. データベースのlistener.orasqlnet.oraおよびtnsnames.oraを更新します。

    1. 次の例は、デフォルトのlistener.oraを示します。

      SID_LIST_LISTENER =
      (SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = /path_to_O_H)(PROGRAM = extproc)))
      LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = mynode.mycorp.com)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCPS)(HOST = mynode.mycorp.com)(PORT = 2490))
      ))
       
      WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/wallet_location)))
       
      SSL_CLIENT_AUTHENTICATION=FALSE}}
      

      次に、更新されたlistener.oraファイルを示します。このシナリオではクライアント認証なしに指定しています。

      SID_LIST_LISTENER =
        (SID_LIST =
          (SID_DESC =
            (GLOBAL_DBNAME = dbname)
            (ORACLE_HOME = /path_to_O_H)
            (SID_NAME = sid)
          )
        )
       
      SSL_CLIENT_AUTHENTICATION = FALSE
       
      WALLET_LOCATION =
        (SOURCE =
          (METHOD = FILE)
          (METHOD_DATA =
            (DIRECTORY = /wallet_path)
          )
        )
       
      LISTENER =
        (DESCRIPTION_LIST =
          (DESCRIPTION =
            (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
          )
          (DESCRIPTION =
            (ADDRESS = (PROTOCOL = TCP)(HOST = mynode.mycorp.com)(PORT = 1521))
          )
          (DESCRIPTION =
            (ADDRESS = (PROTOCOL = TCPS)(HOST = mycorp.com)(PORT = 2490))
          )
        )
      

      SSLポートが追加されています。

    2. 同様に、変更されたsqlnet.oraファイルは次のようになります。

      NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
      SQLNET.AUTHENTICATION_SERVICES=(BEQ,TCPS,NTS)
      WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/directory)))
      SSL_CLIENT_AUTHENTICATION=FALSE
      
    3. 変更されたtnsnames.oraファイルは次のようになります。

      OID =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = mynode.mycorp.com)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = mynode.mycorp.com)
          )
        )
         
      SSL =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCPS)(HOST = mynode.mycorp.com)(PORT = 2490))
          )
          (CONNECT_DATA =
            (SERVICE_NAME = mynode.mycorp.com)
            or
            (SID = mynode.mycorp.com)
          )
          (SECURITY=(SSL_SERVER_CERT_DN=\"CN=server_test,C=US\"))
        )
      
  3. 新しい接続文字列を使用してデータベースへの接続をテストします。次に例を示します。

    $ tnsping ssl
    $ sqlplus username/password@ssl
    

関連項目:

Oracle Database Advanced Security管理者ガイド』のSecure Sockets Layer認証の構成に関する項を参照してください。


6.6.3.2 データソースでのSSLの有効化

次の手順を実行して、SSLを使用するようにOracle WebLogic Server上のデータソースを構成します。

  1. トラストストアを作成して、(データベースでSSLを有効にしたときに作成した)ルート証明書を、信頼できる証明書としてトラストストアに追加します。

  2. Oracle WebLogic Server管理コンソールで、使用しているデータソースの「接続プール」タブにナビゲートします。


    注意:

    Oracle WebCenter Portalデータソースなどの既存ソースや新しいデータソースをデータソースにできます。詳細は、『Oracle Fusion Middleware Oracle WebLogic Server JDBCデータ・ソースの構成と管理』のJDBCデータ・ソースの作成に関する説明を参照してください。


    JDBCプロパティ」テキスト・ボックスで指定する必要があるプロパティは、構成する認証のタイプにより異なります。

    • クライアント認証(双方向認証)が必要な場合:

      javax.net.ssl.keyStore=..(password of the keystore)
             javax.net.ssl.keyStoreType=JKS
             javax.net.ssl.keyStorePassword=...(password of the keystore)
             javax.net.ssl.trustStore=...(the truststore location on the disk)
             javax.net.ssl.trustStoreType=JKS
             javax.net.ssl.trustStorePassword=...(password of the truststore)
      
    • クライアント認証が不要な場合:

      javax.net.ssl.trustStore=...(the truststore location on the disk)
             javax.net.ssl.trustStoreType=JKS
             javax.net.ssl.trustStorePassword=...(password of the truststore)
      
  3. 「URL」テキスト・ボックスにJDBC接続文字列を入力します。プロトコルがTCPSで、SSL_SERVER_CERT_DNにデータベース証明書の完全なDNが含まれていることを確認します。

    tnsnames.oraが「SERVICE_NAME」を使用する場合は、次の構文を使用します。

    jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=host-name)(PORT=port-number)))(CONNECT_DATA=(SERVICE_NAME=service))(SECURITY=(SSL_SERVER_CERT_DN="CN=server_test,C=US")))
    

    tnsnames.oraが「SID」を使用する場合は、次の構文を使用します。

    jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=host-name)(PORT=port-number)))(CONNECT_DATA=(SID=service))(SECURITY=(SSL_SERVER_CERT_DN="CN=server_test,C=US")))
    
  4. 接続をテストおよび検証します。この時点で、データソースはSSLを使用するように構成されています。

6.7 高度なSSLの使用事例

この項では、前述の基本的なトポロジを超えた高度なSSL構成のシナリオを処理する方法について説明します。

この項で使用されているコマンドの詳細および例は、第6.9項を参照してください。

6.7.1 ハードウェア・セキュリティ・モジュールとアクセラレータ

ハードウェア・セキュリティ・モジュール(HSM)は、コンピュータに組み込むことができる物理的なプラグイン・カードまたは外部セキュリティ・デバイスで、セキュアなストレージ環境を提供し機密コンテンツを扱うことができます。


注意:

この説明は、Oracle HTTP Server、Oracle Web CacheおよびOracle Internet Directoryにのみ適用されます。これらは、HSMをサポートするシステム・コンポーネントです。


Oracle Fusion Middlewareでは、PKCS#11規格に準拠したHSMデバイスをサポートし、秘密鍵を使用したセキュアなストレージ環境を提供します。

次の手順を実行し、PKCS#11ウォレットを使用してコンポーネントでSSLを実装します。

  1. コンポーネントが稼働しているマシンにHSMライブラリをインストールします。これは、1回限りのタスクでデバイスに依存します。

  2. 次に、Oracle Wallet Manager(OWM)またはorapkiコマンドライン・ツールを使用してウォレットを作成します。次の点に注意してください。

    1. ウォレット・タイプとして「PKCS11」を選択します。

    2. デバイスとの通信に使用されるデバイス固有のPKCS#11ライブラリを指定します。このライブラリは、HSMソフトウェアの一部です。

      Linuxでは、ライブラリは次の場所にあります。

      For LunaSA (Safenet):  /usr/lunasa/lib/libCryptoki2.so
      For nCipher:  /opt/nfast/toolkits/pkcs11/libcknfast.so
      

      Windowsでは、ライブラリは次の場所にあります。

      For LunaSA (Safenet): C:\Program Files\LunaSA\cryptoki.dll
      
  3. ここで、第三者の証明書を取得するための標準的な手順を実行します。つまり、証明書リクエストを作成し、認証局(CA)で承認されたリクエストを取得して、そのCAで署名された証明書をインストールします。

    設定したウォレットは、他のウォレットと同様に使用されます。

  4. orapkiユーティリティでウォレットを確認します。次のコマンド構文を使用します。

    orapki wallet p11_verify [-wallet [wallet]] [-pwd password]
    

    関連項目:

    orapkiの詳細は、付録H「Oracle Wallet Managerおよびorapki」を参照してください。


  5. configureSSL WLSTコマンドを使用して、コンポーネントのリスナーでSSLを構成します。このコマンドは入力にプロパティ・ファイルを指定します。プロパティ・ファイルでは、コンポーネントが稼働しているマシンのPKCS#11ウォレット・ディレクトリのフルパスを指定する必要があります。(注意: PKCS#11ウォレットをインスタンス・ホーム・ディレクトリに保存しないでください。Fusion Middleware ControlまたはWLSTを介して作成および管理されるウォレットのみがインスタンス・ホームに存在する必要があります。)

    サンプルのプロパティ・ファイルは、次のようになります。

    SSLEnabled=true
    AuthenticationType=Server
    PKCS11Wallet=/tmp/lunasa/wallet 
    

注意:

WLSTコマンドのconfigureSSLを使用して、PKCS11ウォレットを構成する必要があります。Fusion Middleware Controlまたはその他のツールを使用してこのタスクを実行することはできません。


6.7.2 CRLとSSLとの統合


注意:

  • この項の内容は、Oracle WebLogic Server環境におけるOracle HTTP ServerおよびOracle Web Cacheにのみ適用されます。スタンドアロン・コンポーネントでのSSL構成の詳細は、『Oracle Fusion Middleware Oracle HTTP Server管理者ガイド』および『Oracle Fusion Middleware Oracle Web Cache管理者ガイド』を参照してください。

  • CRL検証は、WLSTを使用して管理されます。Fusion Middleware Controlを使用して、このタスクを実行することはできません。


SSLを使用するコンポーネントは、オプションで証明書失効リスト(CRL)を使用した証明書の検証を有効にできます。これによりそのコンポーネントでは、SSLハンドシェイクでピア証明書を検証して、認証局(CA)で発行された失効済証明書のリストにそれがないか確認できます。

この項では、CRLベースの検証を使用するようにコンポーネントを構成する方法、およびファイル・システム上にCRLを作成および設定する方法を説明します。

6.7.2.1 コンポーネントのCRL検証の構成

configureSSL WLSTコマンドを使用して、コンポーネントのリスナーでSSLを構成します。このコマンドは入力にプロパティ・ファイルを指定します。

プロパティ・ファイルは、次のように設定する必要があります。

  1. 「CertValidation」属性は「url」に設定する必要があります。

  2. 「CertValidationPath」属性は、「file://file_path」または「dir://directory_path」という形式にする必要があります。

    • 証明書の検証に単一のCRLファイルを使用している場合、最初の形式を使用します。このCRLファイルは、すべてのCRLファイルを結合する必要があります。

    • 複数のCRLファイルがハッシュ形式で格納されているディレクトリ・パスを指定する場合、2番目の形式を使用します。

      ハッシュ形式でCRLを作成する方法の詳細は、第6.7.2.2項「ファイル・システムでのCRLの管理」を参照してください。

次の例では、プロパティ・ファイルは単一のCRLファイルを指定します。

SSLEnabled=true
AuthenticationType=Server
CertValidation=crl
KeyStore=ohs1 
CertValidationPath=file:///tmp/file.crl

次の例では、プロパティ・ファイルは複数のCRLファイルへのディレクトリ・パスを指定しています。

SSLEnabled=true
AuthenticationType=Server
KeyStore=ohs1 
CertValidation=crl
CertValidationPath=dir:///tmp

6.7.2.2 ファイル・システムでのCRLの管理


注意:

LDAPベースのCRLまたはCRL配布ポイントはサポートされません。


orapkiコマンドライン・ツールを使用して、ファイル・システム上でCRLを管理します。このトピックの詳細は、第H.2.5項「orapkiユーティリティを使用した証明書失効リスト(CRL)の管理」を参照してください。

ハッシュ形式へのCRLの名前変更

CRL格納場所を指定する場合は、CRLの名前を変更する必要があります。これにより、実行時に効率的にCRLをロードできます。この操作では、実際のCRLファイルへのシンボリック・リンクを作成します。Windowsでは、CRLは新しい名前のファイルにコピーされます。

CRLの名前を変更するには:

orapki crl hash 
[-crl [url|filename]] [-wallet wallet] [-symlink directory] 
[-copy directory] [-summary] [-pwd password]

次に例を示します。

orapki crl hash -crl nzcrl.txt -symlink wltdir -pwd password

CRLファイル名を実行時に指定すると、複数のCRLをそのファイルに結合できます。この例で作成されるCRLはBase64形式なので、テキスト・エディタを使用してCRLを結合できます。

CRLの作成


注意:

CRLの作成および証明書の失効はテスト目的で行い、必ず自己署名証明書とともに使用します。本番で使用する場合、本番の証明書を有名なCAから取得して、CRLをそれらの認証局から取得します。


CRLを作成するには:

orapki crl create 
[-crl [url|filename]] [-wallet [cawallet]] [-nextupdate [days]] [-pwd password]

次に例を示します。

orapki crl create 
-crl nzcrl.crl -wallet rootwlt -nextupdate 3650 -pwd password

証明書の失効

証明書が失効すると、証明書のシリアル番号がCRLに追加されます。

証明書を失効させるには:

orapki crl revoke 
[-crl [url|filename]] [-wallet [cawallet]] [-cert   [revokecert]] [-pwd password]

次に例を示します。

orapki crl revoke 
-crl nzcrl.txt -wallet rootwlt -cert cert.txt -pwd password

6.7.2.3 CRL検証が構成されたコンポーネントのテスト

コンポーネントでCRL検証が正しく構成されていることをテストするには、次の手順を実行します。

  1. コンポーネントで使用される証明書をウォレットに設定します。

  2. この証明書を含むCRLを失効済証明書リストの中に生成します。第6.7.2.2項「ファイル・システムでのCRLの管理」で説明されている手順を実行します。

  3. このCRLを使用するようにコンポーネントを構成します。第6.7.2.1項「コンポーネントのCRL検証の構成」で説明されている手順を実行します。

  4. この失効済証明書を使用すると、SSLハンドシェイクは失敗します。

6.7.3 Oracle Fusion MiddlewareのFIPS 140-2の設定

この項では、FIPS 140-2の高度なセキュリティ規格に適合するようにOracle Fusion Middlewareコンポーネントを構成する方法について説明します。この項の項目は次のとおりです。


関連項目:

この規格の詳細は、次の暗号化モジュール検証プログラムのWebサイトを参照してください。

http://csrc.nist.gov/groups/STM/index.html


6.7.3.1 FIPSで構成可能な製品

Oracle SSL SDKを使用する製品は、FIPSモードで実行するように構成できます。特に、次のOracle Fusion Middlewareコンポーネントを構成できます。

  • Oracle HTTP Server

  • Oracle Web Cache

  • Oracle Internet Directory

6.7.3.2 SSLFIPS_140パラメータの設定

これらのコンポーネントをFIPSモードで実行するように構成するには、fips.oraファイルでSSLFIPS_140パラメータをTRUEに設定します。

SSLFIPS_140=TRUE

このファイルは標準装備ではないので、作成する必要があります。fips.oraは、$ORACLE_HOME/ldap/adminディレクトリ、またはFIPS_HOME環境変数で指定されたディレクトリに配置します。

SSLFIPS_140パラメータは、デフォルトではFALSEに設定されます。FIPSモードで操作するには、これをTRUEに設定する必要があります。

6.7.3.3 暗号スイートの選択

暗号スイートは、ネットワーク・ノード間のメッセージ交換に使用される認証、暗号化およびデータ整合性アルゴリズムのセットです。たとえば、SSLハンドシェイク時に、2つのノードでネゴシエーションを行い、メッセージを交換するときにどの暗号スイートを使用するかを確認します。

FIPSモードで使用する場合、次の暗号スイートのみが承認されます。

SSL_RSA_WITH_3DES_EDE_CBC_SHA
SSL_DH_anon_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA

FIPSモードで稼働中に別の暗号を使用しないでください。

コンマ区切りの値を使用してこれらの1つ以上の暗号を構成できます。これらは、WLST configureSSLコマンドのキー「Ciphers」のSSLプロパティ・ファイルまたはFusion Middleware Controlで指定する必要があります。

configureSSLコマンドでのSSLプロパティ・ファイルの指定の詳細は、第6.9.28項「SSL用プロパティ・ファイル」を参照してください。

6.7.3.4 その他の構成パラメータ

FIPSモードを有効にするための最小キー・サイズは、1024ビットです。FIPSモードで使用されるキーのサイズが1024ビット以上であることを確認する必要があります。これは、Oracle HTTP Server、Oracle Web Cache、Oracle Internet Directoryなどのコンポーネントで使用されるウォレットの証明書の公開鍵が最小サイズの1024ビットである必要があるためです。

SSLConfig、Oracle Wallet Manager、orapkiなどのOracleツールを使用して作成されたウォレットのみを使用できます。サードパーティのPKCS#12ウォレット・ファイルは、FIPSモードでは使用できません。

6.8 SSLのベスト・プラクティス

この項では、Oracle Fusion Middlewareコンポーネント管理者およびアプリケーション開発者のいくつかのベスト・プラクティスの概要を説明します。これらの項目が含まれます。

6.8.1 管理者のベスト・プラクティス

システム管理者のベスト・プラクティスには、次のようなものがあります。

  • 自己署名付きウォレットはテスト環境でのみ使用します。本番環境に移行する前にウォレットにCAで署名された証明書を取得する必要があります。詳細は、第8章「キーストア、ウォレットおよび証明書の管理」を参照してください。

  • (少なくともWeb層の)コンポーネントでは、DNとしてシステム・ホスト名または仮想ホストまたはサイト名を持つ証明書を使用することをお薦めします。そうすることにより、混乱させる警告メッセージが表示されることなく、ブラウザはSSLモードで接続できます。

  • SSLで使用される証明書では、最小キー・サイズの1024ビットを使用することをお薦めします。キー・サイズを大きくすると、セキュリティは高くなりますが、パフォーマンスが低下します。セキュリティおよびパフォーマンス要件に応じて、適切なキー・サイズ値を選択します。

  • SSLハンドシェイクが失敗する主な原因の1つに信頼性が欠落していることがあります。SSLハンドシェイクを開始する前に、(サーバーCA証明書をクライアント・キーストアにインポートして)クライアントがサーバーを信頼していることを確認してください。クライアント認証も必要な場合は、その逆も確認する必要があります。

6.8.2 アプリケーション開発者のベスト・プラクティス

次のプラクティスをお薦めします。

  • Javaキーストア(JKS)を使用してJava EEアプリケーションの証明書を保存します。

  • キーストア・パス、トラストストア・パス、構成ファイルの認証タイプなどのSSL構成パラメータは、アプリケーション・コードのそれぞれの値に埋め込まず、外部に配置します。そうすることで、アプリケーション自体を変更せずに柔軟にSSL構成を変更できます。

6.9 SSL関連のWLSTリファレンス

11g リリース1(11.1.1)以降、OracleウォレットおよびJKSキーストアを管理するためのWLSTコマンド、およびOracle Fusion MiddlewareコンポーネントでSSLを構成するためのWLSTコマンドが追加されました。

このタスクでは、表6-1表6-2および表6-3にリストされているコマンドを使用します。


関連項目:

WLSTシェルを起動してSSL関連コマンドを実行する方法の詳細は、キーストアおよびウォレット用コマンドライン・インタフェースに関する項を参照してください。その他の場所からはWLSTインタフェースを起動しないでください。



注意:

SSL構成用のすべてのWLSTコマンドは、オンライン・モードで実行する必要があります。


各コマンドは、次のように指定してヘルプを表示できます。

help('command_name')

特定のコマンドには、インスタンス名、iasコンポーネント、プロセス・タイプなどのパラメータが必要です。この情報は、次のコマンドで取得できます。

$ORACLE_INSTANCE/bin/opmnctl status

表6-1 SSL構成用WLSTコマンド

使用するコマンド 使用目的 WLSTによる使用

configureSSL


コンポーネント・リスナーのSSL属性を設定します。

オンライン

getSSL


コンポーネント・リスナーのSSL属性を表示します。

オンライン


表6-2 Oracleウォレット管理用WLSTコマンド

使用するコマンド 使用目的 WLSTによる使用

addCertificateRequest


Oracleウォレットに証明書署名リクエストを生成します。

オンライン

addSelfSignedCertificate


自己署名証明書をOracleウォレットに追加します。

オンライン

changeWalletPassword


Oracleウォレットのパスワードを変更します。

オンライン

createWallet


Oracleウォレットを作成します。

オンライン

deleteWallet


Oracleウォレットを削除します。

オンライン

exportWallet


Oracleウォレットをファイルにエクスポートします。

オンライン

exportWalletObject


オブジェクト(証明書など)をOracleウォレットからファイルにエクスポートします。

オンライン

getWalletObject


Oracleウォレットに存在する証明書またはその他のオブジェクトを表示します。

オンライン

importWallet


Oracleウォレットをファイルからインポートします。

オンライン

importWalletObject


証明書またはその他のオブジェクトをファイルからOracleウォレットにインポートします。

オンライン

listWalletObjects


Oracleウォレットに存在するすべてのオブジェクト(証明書など)を表示します。

オンライン

listWallets


コンポーネント・インスタンスで構成されるすべてのOracleウォレットを表示します。

オンライン

removeWalletObject


証明書またはその他のオブジェクトをコンポーネント・インスタンスのOracleウォレットから削除します。

オンライン


表6-3 Javaキーストア(JKS)管理用WLSTコマンド

使用するコマンド 使用目的 WLSTによる使用

changeKeyStorePassword


JKSキーストアのパスワードを変更します。

オンライン

createKeyStore


JKSキーストアを作成します。

オンライン

deleteKeyStore


JKSキーストアを削除します。

オンライン

exportKeyStore


JKSキーストアをファイルにエクスポートします。

オンライン

exportKeyStoreObject


オブジェクト(証明書など)をJKSキーストアからファイルにエクスポートします。

オンライン

generateKey


JKSキーストアの鍵のペアを生成します。

オンライン

getKeyStoreObject


JKSキーストアに存在する証明書またはその他のオブジェクトを表示します。

オンライン

importKeyStore


JKSキーストアをファイルからインポートします。

オンライン

importKeyStoreObject


証明書またはその他のオブジェクトをファイルからJKSキーストアにインポートします。

オンライン

listKeyStoreObjects


JKSキーストアに存在するすべてのオブジェクト(証明書など)をリストします。

オンライン

listKeyStores


コンポーネント・インスタンスで構成されるすべてのJKSキーストアをリストします。

オンライン

removeKeyStoreObject


証明書またはその他のオブジェクトをコンポーネント・インスタンスのJKSキーストアから削除します。

オンライン



注意:

WLSTを使用する場合、証明書はPEMフォーマットのみでインポートできます。


6.9.1 addCertificateRequest

Oracleウォレットに証明書署名リクエストを生成するオンライン・コマンドです。

6.9.1.1 説明

このコマンドにより、コンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットにBase64でエンコードされたPKCS#10形式の証明書署名リクエストを生成します。認証局(CA)で署名された証明書を取得するには、証明書署名リクエストをCAに送信します。

6.9.1.2 構文

addCertificateRequest('instName', 'compName', 'compType', 'walletName', 'password', 'DN', 'keySize')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

DN

鍵ペアのエントリの識別名を指定します。

keySize

鍵サイズをビット単位で指定します。


6.9.1.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、DNがcn=www.acme.comでキー・サイズが1024の証明書署名リクエストがwallet1に生成されます。

wls:/mydomain/serverConfig> addCertificateRequest('inst1', 'oid1', 'oid','wallet1', 'password', 'cn=www.acme.com', '1024',)

6.9.2 addSelfSignedCertificate

自己署名証明書を追加するオンライン・コマンドです。

6.9.2.1 説明

このコマンドにより、鍵ペアを作成して、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットの自己署名証明書でラップします。RSAアルゴリズムに基づいた鍵のみが生成されます。

6.9.2.2 構文

addSelfSignedCertificate('instName', 'compName', 'compType', 'walletName',                         'password', 'DN', 'keySize')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

DN

鍵ペアのエントリの識別名を指定します。

keySize

鍵サイズをビット単位で指定します。


6.9.2.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、DNがcn=www.acme.comでキー・サイズが1024の自己署名証明書がwallet1に追加されます。

wls:/mydomain/serverConfig> addSelfSignedCertificate('inst1', 'oid1', 'oid','wallet1', 'password', 'cn=www.acme.com', '1024')

6.9.3 changeKeyStorePassword

キーストアのパスワードを変更するオンライン・コマンドです。

6.9.3.1 説明

このコマンドにより、Oracle Virtual DirectoryインスタンスのJavaキーストア(JKS)ファイルのパスワードを変更します。

6.9.3.2 構文

changeKeyStorePassword('instName', 'compName', 'compType', 'keystoreName', 'currPassword', 'newPassword')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストアのファイル名を指定します。

currPassword

現在のキーストア・パスワードを指定します。

newPassword

新しいキーストア・パスワードを指定します。


6.9.3.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1のファイルkeys.jksのパスワードが変更されます。

wls:/mydomain/serverConfig> changeKeyStorePassword('inst1', 'ovd1', 'ovd','keys.jks', 'currpassword', 'newpassword')

6.9.4 changeWalletPassword

Oracleウォレットのパスワードを変更するオンライン・コマンドです。

6.9.4.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットのパスワードを変更します。このコマンドは、パスワードで保護されたウォレットにのみ適用されます。

6.9.4.2 構文

changeWalletPassword('instName', 'compName', 'compType', 'walletName','currPassword', 'newPassword')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレットのファイル名を指定します。

currPassword

現在のウォレット・パスワードを指定します。

newPassword

新しいウォレット・パスワードを指定します。


6.9.4.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle HTTP Serverインスタンスohs1wallet1のパスワードがcurrpasswordからnewpasswordに変更されます。

wls:/mydomain/serverConfig> changeWalletPassword('inst1', 'ohs1', 'ohs','wallet1', 'currpassword', 'newpassword')

6.9.5 configureSSL

SSL属性を設定するオンライン・コマンドです。

6.9.5.1 説明

このコマンドにより、コンポーネント・リスナーのSSL属性を設定します。属性はプロパティ・ファイル形式(name=value)で指定します。このファイルが指定されない場合、またはそのファイルにSSL属性が含まれていない場合、デフォルトの属性値が使用されます。

プロパティ・ファイルの形式の詳細は、第6.9.28項「SSL用プロパティ・ファイル」を参照してください。

6.9.5.2 構文

configureSSL('instName', 'compName', 'compType', 'listener', 'filePath')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ovd」、「ohs」および「webcache」です。

listener

SSLで構成するコンポーネント・リスナーの名前を指定します。

filePath

設定するSSL属性を含むプロパティ・ファイルの絶対パスを指定します。


6.9.5.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1のリスナーlistener1に対して、プロパティ・ファイル/tmp/ssl.propertiesで指定されたSSL属性が構成されます。

wls:/mydomain/serverConfig> configureSSL('inst1', 'ovd1', 'ovd', 'listener1','/tmp/ssl.properties')

次のコマンドでは、プロパティ・ファイルを指定せずにSSL属性を構成します。ファイルが指定されないので、デフォルトのSSL属性値が使用されます。

wls:/mydomain/serverConfig> configureSSL('inst1', 'ovd1', 'ovd', 'listener2')

6.9.6 createKeyStore

JKSキーストアを作成するオンライン・コマンドです。

6.9.6.1 説明

このコマンドにより、指定されたOracle Virtual DirectoryインスタンスのJavaキーストア(JKS)を作成します。キーストア・ファイルの場所およびその他の情報の詳細は、キーストアの場所に関する項を参照してください。

6.9.6.2 構文

createKeyStore('instName', 'compName', 'compType', 'keystoreName', 'password')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

作成するキーストア・ファイルのファイル名を指定します。

password

キーストア・パスワードを指定します。


6.9.6.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1のJKSファイルkeys.jksが、パスワードpassword で作成されます。

wls:/mydomain/serverConfig> createKeyStore('inst1', 'ovd1', 'ovd','keys.jks', 'password')

6.9.7 createWallet

Oracleウォレットを作成するオンライン・コマンドです。

6.9.7.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットを作成します。ウォレットは、パスワードで保護することも自動ログイン・タイプにすることもできます。ウォレットの詳細は、第8章「キーストア、ウォレットおよび証明書の管理」を参照してください。

6.9.7.2 構文

createWallet('instName', 'compName', 'compType', 'walletName', 'password')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

作成するウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。


6.9.7.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle HTTP Serverインスタンスohs1wallet1というウォレットが、パスワードpasswordで作成されます。

wls:/mydomain/serverConfig> createWallet('inst1', 'ohs1', 'ohs','wallet1', 'password')

次のコマンドにより、アプリケーション・サーバー・インスタンスinst1のOracle WebCacheインスタンスwc1に対して、wallet2という自動ログイン・ウォレットが作成されます。

wls:/mydomain/serverConfig> createWallet('inst1', 'wc1', 'webcache','wallet2', '')

6.9.8 deleteKeyStore

キーストアを削除するオンライン・コマンドです。

6.9.8.1 説明

このコマンドにより、指定されたOracle Virtual Directoryインスタンスのキーストアを削除します。

6.9.8.2 構文

deleteKeyStore('instName', 'compName', 'compType', 'keystoreName')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

削除するキーストア・ファイルの名前を指定します。


6.9.8.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1のJKSファイルkeys.jksが削除されます。

wls:/mydomain/serverConfig> deleteKeyStore('inst1', 'ovd1', 'ovd','keys.jks')

6.9.9 deleteWallet

Oracleウォレットを削除するオンライン・コマンドです。

6.9.9.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットを削除します。

6.9.9.2 構文

deleteWallet('instName', 'compName', 'compType', 'walletName')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

削除するウォレット・ファイルの名前を指定します。


6.9.9.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle HTTP Serverインスタンスohs1wallet1というウォレットが削除されます。

wls:/mydomain/serverConfig> deleteWallet('inst1', 'ohs1', 'ohs','wallet1')

6.9.10 exportKeyStore

キーストアをファイルにエクスポートするオンライン・コマンドです。

6.9.10.1 説明

このコマンドでは、指定されたOracle Virtual Directoryインスタンスで構成されたキーストアを、指定されたディレクトリの下のファイルにエクスポートします。エクスポートされたファイルの名前は、キーストア名と同じになります。

6.9.10.2 構文

exportKeyStore('instName', 'compName', 'compType', 'keystoreName',               'password', 'path')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストア・ファイルの名前を指定します。

password

キーストアのパスワードを指定します。

path

キーストアのエクスポート先ディレクトリの絶対パスを指定します。


6.9.10.3

次のコマンドでは、Oracle Virtual Directoryインスタンスovd1のキーストアkeys.jks/tmpの下のファイルkeys.jksにエクスポートされます。

wls:/mydomain/serverConfig> exportKeyStore('inst1', 'ovd1', 'ovd', 'keys.jks', 'password', '/tmp')

6.9.11 exportKeyStoreObject

オブジェクトをキーストアからファイルにエクスポートするオンライン・コマンドです。

6.9.11.1 説明

このコマンドでは、Javaキーストア(JKS)に存在する証明書署名リクエスト、証明書や証明書チェーン、または信頼できる証明書を、指定されたOracle Virtual Directoryンスタンスのファイルにエクスポートします。証明書署名リクエストは、オブジェクトをエクスポートする前に生成されます。エクスポートするオブジェクトを別名で指定します。

6.9.11.2 構文

exportKeyStoreObject('instName', 'compName', 'compType', 'keystoreName', 'password', 'type', 'path', 'alias')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストア・ファイルの名前を指定します。

password

キーストアのパスワードを指定します。

type

エクスポートするキーストア・オブジェクトのタイプを指定します。有効な値は、「CertificateRequest」、「Certificate」、「TrustedCertificate」および「TrustedChain」です。

path

base64.txtという名前のファイルとしてオブジェクトをエクスポートする先のディレクトリの絶対パスを指定します。

alias

エクスポートするキーストア・オブジェクトの別名を指定します。


6.9.11.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに別名mykeyで示される鍵のペアから証明書署名リクエストが生成されてエクスポートされます。証明書署名リクエストは、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'CertificateRequest', '/tmp','mykey')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに別名mykeyで示される証明書または証明書チェーンがエクスポートされます。証明書または証明書チェーンは、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'Certificate', '/tmp','mykey')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに別名mykeyで示される信頼できる証明書がエクスポートされます。信頼できる証明書は、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'TrustedCertificate', '/tmp','mykey')

6.9.12 exportWallet

Oracleウォレットをエクスポートするオンライン・コマンドです。

6.9.12.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)で構成されたOracleウォレットを、指定されたディレクトリの下のファイルにエクスポートします。エクスポートされたファイルが自動ログインのみのウォレットの場合、そのファイル名はcwallet.ssoになります。それがパスワードで保護されたウォレットの場合、ewallet.p12とcwallet.ssoという2つのファイルが作成されます。

6.9.12.2 構文

exportWallet('instName', 'compName', 'compType', 'walletName','password', 'path')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

path

オブジェクトのエクスポート先ディレクトリの絶対パスを指定します。


6.9.12.3

次のコマンドでは、Oracle Internet Directoryインスタンスoid1の自動ログイン・ウォレットwallet1/tmpの下のファイルcwallet.ssoにエクスポートされます。

wls:/mydomain/serverConfig> exportWallet('inst1', 'oid1', 'oid', 'wallet1','','/tmp')

次のコマンドでは、Oracle Internet Directoryインスタンスoid1のパスワードで保護されたウォレットwallet2が、/tmpの下のewallet.p12cwallet.ssoの2つのファイルにエクスポートされます。

wls:/mydomain/serverConfig> exportWallet('inst1', 'oid1', 'oid', 'wallet2', 'password', '/tmp')

6.9.13 exportWalletObject

証明書またはその他のウォレット・オブジェクトをファイルにエクスポートするオンライン・コマンドです。

6.9.13.1 説明

このコマンドにより、Oracleウォレットに存在する証明書署名リクエスト、証明書、証明書チェーンまたは信頼できる証明書を、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のファイルにエクスポートします。DNは、エクスポートするオブジェクトを示します。

6.9.13.2 構文

exportWalletObject('instName', 'compName', 'compType', 'walletName', 'password', 'type', 'path', 'DN')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

type

エクスポートするウォレット・オブジェクトのタイプを指定します。有効な値は、「CertificateRequest」、「Certificate」、「TrustedCertificate」または「TrustedChain」です。

path

ファイルbase64.txtとしてオブジェクトをエクスポートする先のディレクトリの絶対パスを指定します。

DN

エクスポートするウォレット・オブジェクトの識別名を指定します。


6.9.13.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のDN cn=www.acme.comの証明書署名リクエストがエクスポートされます。証明書署名リクエストは、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'CertificateRequest', '/tmp','cn=www.acme.com')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のDN cn=www.acme.comの証明書がエクスポートされます。証明書または証明書チェーンは、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'Certificate', '/tmp','cn=www.acme.com')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のDN cn=www.acme.comの信頼できる証明書がエクスポートされます。信頼できる証明書は、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'TrustedCertificate', '/tmp','cn=www.acme.com')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のDN cn=www.acme.comの証明書チェーンがエクスポートされます。証明書または証明書チェーンは、ディレクトリ/tmpの下にエクスポートされます。

wls:/mydomain/serverConfig> exportWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'TrustedChain', '/tmp','cn=www.acme.com')

6.9.14 generateKey

Javaキーストアの鍵のペアを生成するオンライン・コマンドです。

6.9.14.1 説明

このコマンドでは、Oracle Virtual DirectoryのJavaキーストア(JKS)の鍵のペアを生成します。これにより、自己署名証明書の鍵のペアもラップします。RSAアルゴリズムに基づいた鍵のみが生成されます。

6.9.14.2 構文

generateKey('instName', 'compName', 'compType', 'keystoreName', 'password', 'DN', 'keySize', 'alias', 'algorithm')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストアの名前を指定します。

password

キーストアのパスワードを指定します。

DN

鍵ペアのエントリの識別名を指定します。

keySize

鍵サイズをビット単位で指定します。

alias

キーストアの鍵ペアのエントリの別名を指定します。

algorithm

鍵のアルゴリズムを指定します。有効な値は、「RSA」です。


6.9.14.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、DNがcn=www.acme.com、キー・サイズが1024、アルゴリズムがRSA、およびkeys.jksの別名mykeyで、鍵のペアが生成されます。

wls:/mydomain/serverConfig> generateKey('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'cn=www.acme.com', '1024', 'mykey', 'RSA')

次のコマンドは、鍵のアルゴリズムを明示的に指定していないこと以外は前述と同じです。

wls:/mydomain/serverConfig> generateKey('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'cn=www.acme.com', '1024', 'mykey')

6.9.15 getKeyStoreObject

キーストア・オブジェクトの詳細を表示するオンライン・コマンドです。

6.9.15.1 説明

このコマンドでは、Oracle Virtual DirectoryのJavaキーストア(JKS)に存在する特定の証明書または信頼できる証明書を表示します。キーストア・オブジェクトは、listKeyStoreObjectsコマンドで指定される索引番号で示されます。DN、キー・サイズ、アルゴリズムなどの証明書詳細情報が表示されます。

6.9.15.2 構文

getKeyStoreObject('instName', 'compName', 'compType', 'keystoreName', 'password', 'type', 'index')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストア・ファイルの名前を指定します。

password

キーストアのパスワードを指定します。

type

一覧表示するキーストア・オブジェクトのタイプを指定します。有効な値は、「Certificate」および「TrustedCertificate」です。

index

listKeyStoreObjectsコマンドで返されるキーストア・オブジェクトの索引番号を指定します。


6.9.15.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに存在する索引1の信頼できる証明書が表示されます。

wls:/mydomain/serverConfig> getKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'TrustedCertificate', '1')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに存在する索引1の証明書が表示されます。

wls:/mydomain/serverConfig> getKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'Certificate', '1')

6.9.16 getSSL

構成されたSSL属性を一覧表示するオンライン・コマンドです。

6.9.16.1 説明

このコマンドにより、指定されたコンポーネント・リスナーに構成されたSSL属性を一覧表示します。Oracle Internet Directoryでは、リスナー名は常に「sslport1」です。

6.9.16.2 構文

getSSL('instName', 'compName', 'compType', 'listener')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」、「oid」、「ohs」および「webcache」です。

listener

コンポーネント・リスナーの名前を指定します。


6.9.16.3

次のコマンドにより、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1のリスナーsslport1で構成されるSSL属性が表示されます。

wls:/mydomain/serverConfig> getSSL('inst1', 'oid1', 'oid', 'sslport1')

6.9.17 getWalletObject

Oracleウォレットの証明書やその他のオブジェクトに関する情報を表示するオンライン・コマンドです。

6.9.17.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットに存在する特定の証明書署名リクエスト、証明書または信頼できる証明書を表示します。ウォレット・オブジェクトは、listWalletObjectsコマンドで指定される索引番号で示されます。証明書または信頼できる証明書のDN、キー・サイズ、アルゴリズムなどの詳細データが表示されます。証明書署名リクエストの場合、サブジェクトDN、キー・サイズおよびアルゴリズムが表示されます。

6.9.17.2 構文

getWalletObject('instName', 'compName', 'compType', 'walletName', 'password', 'type', 'index')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

type

エクスポートするウォレット・オブジェクトのタイプを指定します。有効な値は、「CertificateRequest」、「Certificate」および「TrustedCertificate」です。

index

listWalletObjectsコマンドで返されるウォレット・オブジェクトの索引番号を指定します。


6.9.17.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、wallet1に存在する索引0のオブジェクトの証明書署名リクエスト詳細が表示されます。

wls:/mydomain/serverConfig> getKeyStoreObject('inst1', 'oid1', 'oid','wallet1','password', 'CertificateRequest', '0')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、wallet1に存在する索引0のオブジェクトの証明書詳細が表示されます。

wls:/mydomain/serverConfig> getKeyStoreObject('inst1', 'oid1', 'oid','wallet1','password', 'Certificate', '0')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、wallet1に存在する索引0のオブジェクトの信頼できる証明書の詳細が表示されます。

wls:/mydomain/serverConfig> getKeyStoreObject('inst1', 'oid1', 'oid','wallet1','password', 'TrustedCertificate', '0')

6.9.18 importKeyStore

キーストアをファイルからインポートするオンライン・コマンドです。

6.9.18.1 説明

このコマンドにより、管理用に指定されたOracle Virtual DirectoryインスタンスにJavaキーストア(JKS)をファイルからインポートします。コンポーネント・インスタンス名は一意にする必要があります。

6.9.18.2 構文

importKeyStore('instName', 'compName', 'compType', 'keystoreName','password', 'filePath')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

インポートするキーストアの名前を指定します。この名前はこのコンポーネント・インスタンスで一意にする必要があります。

password

キーストアのパスワードを指定します。

filePath

インポートするキーストア・ファイルの絶対パスを指定します。


6.9.18.3

次のコマンドでは、キーストア/tmp/keys.jksfile.jksとしてOracle Virtual Directoryインスタンスovd1にエクスポートされます。それ以降、そのキーストアはfile.jksという名前で管理されます。

wls:/mydomain/serverConfig> importKeyStore('inst1', 'ovd1', 'ovd', 'file.jks','password', '/tmp/keys.jks')

6.9.19 importKeyStoreObject

オブジェクトをファイルからキーストアにインポートするオンライン・コマンドです。

6.9.19.1 説明

このコマンドにより、証明書、証明書チェーンまたは信頼できる証明書をOracle Virtual DirectoryのJavaキーストア(JKS)にインポートして、指定された別名にそれを割り当てます。その別名はキーストアで一意にする必要があります。証明書または証明書チェーンをインポートする場合、別名は対応する鍵ペアの別名と一致する必要があります。

6.9.19.2 構文

importKeyStoreObject('instName', 'compName', 'compType', 'keystoreName', 'password', 'type', 'filePath', 'alias')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストアの名前を指定します。

password

キーストアのパスワードを指定します。

type

インポートするキーストア・オブジェクトのタイプを指定します。有効な値は、「Certificate」および「TrustedCertificate」です。

filePath

キーストア・オブジェクトを含むファイルの絶対パスを指定します。

alias

インポートするキーストア・オブジェクトに割り当てる別名を指定します。


6.9.19.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインタンスovd1で、別名mykeyを使用して、ファイルcert.txtからkeys.jksに証明書または証明書チェーンがインポートされます。ファイルkeys.jksは、インポートされる証明書の公開鍵に適合する鍵のペアの別名mykeyを持っている必要があります。

wls:/mydomain/serverConfig> > importKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'Certificate','/tmp/cert.txt', 'mykey')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインタンスovd1で、別名mykey1を使用して、ファイルtrust.txtからkeys.jksに信頼できる証明書がインポートされます。

wls:/mydomain/serverConfig> importKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'TrustedCertificate','/tmp/trust.txt', 'mykey1')

6.9.20 importWallet

Oracleウォレットをファイルからインポートするオンライン・コマンドです。

6.9.20.1 説明

このコマンドにより、管理用に指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)にOracleウォレットをファイルからインポートします。インポートされるウォレットが自動ログイン・ウォレットの場合、ファイル・パスはcwallet.ssoを指す必要があります。ウォレットがパスワードで保護される場合は、ewallet.p12を指す必要があります。このウォレット名はこのコンポーネント・インスタンスで一意にする必要があります。

6.9.20.2 構文

importWallet('instName', 'compName', 'compType', 'walletName', 'password', 'filePath')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

インポートするウォレットの名前を指定します。名前はコンポーネント・インスタンスで一意にする必要があります。

password

ウォレットのパスワードを指定します。

filePath

インポートするウォレット・ファイルの絶対パスを指定します。


6.9.20.3

次のコマンドでは、自動ログイン・ウォレット・ファイル/tmp/cwallet.ssowallet1としてOracle Internet Directoryインスタンスoid1にインポートされます。それ以降、そのウォレットはwallet1という名前で管理されます。これは自動ログイン・ウォレットのため、パスワードは渡しません。

wls:/mydomain/serverConfig> importWallet('inst1', 'oid1', 'oid', 'wallet1', '', '/tmp/cwallet.sso')

次のコマンドでは、パスワードで保護されたウォレット/tmp/ewallet.p12wallet2としてOracle Internet Directoryインスタンスoid1にインポートされます。それ以降、そのウォレットはwallet2という名前で管理されます。ウォレット・パスワードは、パラメータとして渡されます。

wls:/mydomain/serverConfig> importWallet('inst1', 'oid1', 'oid', 'wallet2', 'password', '/tmp/ewallet.p12')

6.9.21 importWalletObject

証明書やその他のオブジェクトをOracleウォレットにインポートするオンライン・コマンドです。

6.9.21.1 説明

このコマンドにより、証明書、信頼できる証明書または証明書チェーンを、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheコンポーネントまたはOracle Internet Directory)のOracleウォレットにインポートします。証明書をインポートする場合、証明書署名リクエストが生成されたウォレット・ファイルと同じファイルを使用します。

6.9.21.2 構文

importWalletObject('instName', 'compName', 'compType', 'walletName', 'password', 'type', 'filePath')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

type

インポートするウォレット・オブジェクトのタイプを指定します。有効な値は、「Certificate」、「TrustedCertificate」および「TrustedChain」です。

filePath

ウォレット・オブジェクトを含むファイルの絶対パスを指定します。


6.9.21.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、証明書チェーンがPKCS#7形式でファイルchain.txtからwallet1にインポートされます。

wls:/mydomain/serverConfig> importWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'TrustedChain','/tmp/chain.txt')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、証明書がファイルcert.txtからwallet1にインポートされます。

wls:/mydomain/serverConfig> > importWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'Certificate','/tmp/cert.txt')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1で、信頼できる証明書がファイルtrust.txtからwallet1にインポートされます。

wls:/mydomain/serverConfig> importWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'TrustedCertificate','/tmp/trust.txt')

6.9.22 listKeyStoreObjects

キーストアの内容を一覧表示するオンライン・コマンドです。

6.9.22.1 説明

このコマンドでは、Oracle Virtual DirectoryのJavaキーストア(JKS)に存在するすべての証明書または信頼できる証明書を一覧表示します。

6.9.22.2 構文

listKeyStoreObjects('instName', 'compName', 'compType', 'keystoreName','password', 'type')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストア・ファイルの名前を指定します。

password

キーストアのパスワードを指定します。

type

一覧表示するキーストア・オブジェクトのタイプを指定します。有効な値は、「Certificate」および「TrustedCertificate」です。


6.9.22.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1keys.jksに存在するすべての信頼できる証明書が一覧表示されます。

wls:/mydomain/serverConfig> listKeyStoreObjects('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'TrustedCertificate')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1keys.jksに存在するすべての証明書が一覧表示されます。

wls:/mydomain/serverConfig> listKeyStoreObjects('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'Certificate')

6.9.23 listKeyStores

コンポーネントのすべてのキーストアを一覧表示するオンライン・コマンドです。

6.9.23.1 説明

このコマンドにより、指定されたOracle Virtual Directoryインスタンスで構成されたすべてのJavaキーストア(JKS)を一覧表示します。

6.9.23.2 構文

listKeyStores('instName', 'compName', 'compType')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。


6.9.23.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1のすべてのキーストアが一覧表示されます。

wls:/mydomain/serverConfig> listKeyStores('inst1', 'ovd1', 'ovd')

6.9.24 listWalletObjects

Oracleウォレットのすべてのオブジェクトを一覧表示するオンライン・コマンドです。

6.9.24.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットに存在するすべての証明書署名リクエスト、証明書または信頼できる証明書を一覧表示します。

6.9.24.2 構文

listWalletObjects('instName', 'compName', 'compType', 'walletName', password', 'type')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

type

一覧表示するウォレット・オブジェクトのタイプを指定します。有効な値は、「CertificateRequest」、「Certificate」および「TrustedCertificate」です。


6.9.24.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のすべての証明書署名リクエストが一覧表示されます。

wls:/mydomain/serverConfig> > listWalletObjects('inst1', 'oid1', 'oid','wallet1','password', 'CertificateRequest')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のすべての証明書が一覧表示されます。

wls:/mydomain/serverConfig> listWalletObjects('inst1', 'oid1', 'oid','wallet1','password', 'Certificate')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1内のすべての信頼できる証明書が一覧表示されます。

wls:/mydomain/serverConfig> listWalletObjects('inst1', 'oid1', 'oid','wallet1','password', 'TrustedCertificate')

6.9.25 listWallets

コンポーネント・インスタンスで構成されたすべてのウォレットを一覧表示するオンライン・コマンドです。

6.9.25.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)で構成されたすべてのウォレットを表示して、自動ログイン・ウォレットを特定します。

6.9.25.2 構文

listWallets('instName', 'compName', 'compType')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。


6.9.25.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1のすべてのウォレットが一覧表示されます。

wls:/mydomain/serverConfig> > listWallets('inst1', 'oid1', 'oid')

6.9.26 removeKeyStoreObject

キーストアからオブジェクトを削除するオンライン・コマンドです。

6.9.26.1 説明

このコマンドでは、Oracle Virtual DirectoryのJavaキーストア(JKS)から1つの証明書リクエスト、証明書、信頼できる証明書またはすべての信頼できる証明書を削除します。別名を使用して特定のオブジェクトを削除します。すべての信頼できる証明書を削除する場合は別名は不要です。

6.9.26.2 構文

removeKeyStoreObject('instName', 'compName', 'compType', 'keystoreName','password', 'type', 'alias')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「ovd」です。

keystoreName

キーストア・ファイルの名前を指定します。

password

キーストアのパスワードを指定します。

type

削除するキーストア・オブジェクトのタイプを指定します。有効な値は、「Certificate」、「TrustedCertificate」および「TrustedAll」です。

alias

削除するキーストア・オブジェクトの別名を指定します。


6.9.26.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに別名mykeyで示される証明書または証明書チェーンが削除されます。

wls:/mydomain/serverConfig> removeKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'Certificate','mykey')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1で、keys.jksに別名mykeyで示される、信頼できる証明書が削除されます。

wls:/mydomain/serverConfig> removeKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'TrustedCertificate','mykey')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Virtual Directoryインスタンスovd1keys.jksに存在するすべての信頼できる証明書が削除されます。別名は不要なので、そのパラメータには値Noneを渡します。

wls:/mydomain/serverConfig> removeKeyStoreObject('inst1', 'ovd1', 'ovd','keys.jks', 'password', 'TrustedAll',None)

6.9.27 removeWalletObject

証明書やその他のオブジェクトをOracleウォレットから削除するオンライン・コマンドです。

6.9.27.1 説明

このコマンドにより、指定されたコンポーネント・インスタンス(Oracle HTTP Server、Oracle WebCacheまたはOracle Internet Directory)のOracleウォレットから1つの証明書署名リクエスト、証明書、信頼できる証明書またはすべての信頼できる証明書を削除します。DNは、削除するオブジェクトを示すために使用されます。

6.9.27.2 構文

removeWalletObject('instName', 'compName', 'compType', 'walletName', 'password', 'type', 'DN')
引数 定義

instName

アプリケーション・サーバー・インスタンスの名前を指定します。

compName

コンポーネント・インスタンスの名前を指定します。

compType

コンポーネントのタイプを指定します。有効な値は、「oid」、「ohs」および「webcache」です。

walletName

ウォレット・ファイルの名前を指定します。

password

ウォレットのパスワードを指定します。

type

削除するキーストア・オブジェクトのタイプを指定します。有効な値は、「CertificateRequest」、「Certificate」、「TrustedCertificate」または「TrustedAll」です。

DN

削除するウォレット・オブジェクトの識別名を指定します。


6.9.27.3

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1からすべての信頼できる証明書が削除されます。DNを指定する必要はありません。DNパラメータにはnullを渡します(Noneと指定します)。

wls:/mydomain/serverConfig> removeWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'TrustedAll',None)

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1からDN cn=www.acme.comで示される証明書署名リクエストが削除されます。

wls:/mydomain/serverConfig> removeWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'CertificateRequest','cn=www.acme.com')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1からDN cn=www.acme.comで示される証明書が削除されます。

wls:/mydomain/serverConfig> removeWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'Certificate','cn=www.acme.com')

次のコマンドでは、アプリケーション・サーバー・インスタンスinst1のOracle Internet Directoryインスタンスoid1の、wallet1からDN cn=www.acme.comで示される、信頼できる証明書が削除されます。

wls:/mydomain/serverConfig> removeWalletObject('inst1', 'oid1', 'oid','wallet1', 'password', 'TrustedCertificate','cn=www.acme.com')

6.9.28 SSL用プロパティ・ファイル

SSL構成では、WLSTのconfigureSSLコマンドで使用する特定のプロパティ・ファイルを使用します。このファイルには、認証タイプ、暗号値、SSLバージョンなどの目的のSSL構成を指定するためのパラメータが含まれます。

異なるコンポーネントで複数のプロパティ・ファイルを管理する必要がある場合、わかりやすい名前を使用できます。たとえば、プロパティ・ファイルにohs-ssl-properties.propovd-ssl-properties.propなどの名前を付けることができます。

6.9.28.1 プロパティ・ファイルの構造

すべてのSSLプロパティ・ファイルは、一貫した構造を持ちます。

表6-4では、鍵の値の構造およびこれらのファイルの使用に関する詳細について説明しています。

表6-4 プロパティ・ファイルのパラメータ

必須? Oracle HTTP Server、Oracle Internet DirectoryおよびOracle Web Cacheで許可される値 Oracle Virtual Directoryで許可される値 用途

SSLEnabled

いいえ

true

false

true

false

いずれかの値

Ciphers

いいえ

SSL_RSA_WITH_RC4_128_MD5

SSL_RSA_WITH_RC4_128_SHA

SSL_RSA_WITH_3DES_EDE_CBC_SHA

SSL_RSA_WITH_DES_CBC_SHA

SSL_DH_anon_WITH_RC4_128_MD5

SSL_DH_anon_WITH_DES_CBC_SHA

SSL_DH_anon_WITH_3DES_EDE_CBC_SHA

TLS_RSA_WITH_AES_128_CBC_SHA

TLS_RSA_WITH_AES_256_CBC_SHA

JSSEプロバイダで許可される1つまたは複数の暗号JDK 1.5で許可される暗号の完全なリストは、次のガイドの付録Aを参照してください。http://java.sun.com/j2se/1.5.0/docs/guide/security/jsse/JSSERefGuide.html

1つまたは複数のカンマ区切りの値

SSLVersions

いいえ

nzos_Version_3_0

nzos_Version_3_0_With_2_0_Hello

nzos_Version_1_0

TLSv1

SSLv2Hello(単独では指定できません。少なくとも別のバージョンを1つ指定する必要があります)

SSLv3

1つまたは複数のカンマ区切りの値

CertValidation

いいえ

なし

crl

該当なし

いずれかの値

CertValidation
Path

いいえ

file://crl_file_path

dir://crl_dir_path

該当なし

CRLファイルのパス、またはCRLファイルを含むディレクトリ

KeyStore

いいえ

有効なウォレット名

有効なキーストア名


TrustStore

いいえ

該当なし

有効なトラストストア名


AuthenticationType

いいえ

なし

サーバー

オプション

Mutual

なし

サーバー

オプション

Mutual

任意の1つの値


表6-5に、デフォルト値を示します。

表6-5 パラメータのデフォルト値

Oracle HTTP Serverのデフォルト値 Oracle Web Cacheのデフォルト値 Oracle Internet Directoryのデフォルト値 Oracle Virtual Directoryのデフォルト値

SSLEnabled

true

true

true

true

Ciphers

null

null

null

null

SSLVersions

null

null

null

null

CertValidation

なし

なし

-

-

CertValidation
Path

null

null

-

-

KeyStore

デフォルト

デフォルト

null

keys.jks

TrustStore

-

-

-

keys.jks

Authentication
Type

サーバー

サーバー

なし

サーバー



注意:

  • 少なくとも1つのDH_anon暗号は、SSL認証なしモードで使用する必要があります。その他すべてのモードでは、少なくとも1つのRSA暗号を使用する必要があります。

  • サーバー認証、相互認証またはオプションのクライアント認証でSSLを構成する場合、KeyStoreパラメータの値を指定する必要があります。

  • AES暗号のみが指定されている場合、SSLVersionsパラメータにはTLSv1またはnzos_Version_1_0を含める必要があります。

  • CRLベースの検証を実行する場合、CertValidationパラメータの値にはcrlを指定し、CertValidationPathパラメータの値はCRLファイルやディレクトリを指す必要があります。


6.9.28.2 プロパティ・ファイルの例

いくつかの例を使用して、プロパティの使用方法について説明します。

例1: 基本的なプロパティ・ファイル

SSLEnabled=true
AuthenticationType=None
CertValidation=none

このプロパティ・ファイルでは、認証なしモードが指定され、暗号およびSSLバージョンにはSSL構成時のデフォルト値が使用されます。認証タイプがNoneであるため、キーストア・プロパティおよびトラストストア・プロパティは指定しません。他の認証タイプでは、キーストアを指定する必要があります。

例2: 基本的なプロパティ・ファイル

SSLEnabled=
AuthenticationType=None
CertValidation=none

このプロパティ・ファイルは前述の例と同様ですが、SSLEnabledを値なしで明示的に指定している点が異なります。これは、キーを指定しないのと同じことです。どちらのケースも、デフォルト値が使用されます。

そのため、次の3つ設定は同じ意味になります。

  • 設定:

    SSLEnabled=true
    

    ここでは、値trueを明示的に指定しています。

  • 設定:

    SSLEnabled=
    

    ここでは値を指定していないので、SSLEnabledのデフォルト値(true)が使用されます。

  • SSLEnabledがプロパティ・ファイルに存在しない

    キーが存在しないので、デフォルト値(true)が使用されます。

例3: OHSのバージョンを含むプロパティ・ファイル

SSLEnabled=true
AuthenticationType=Mutual
SSLVersion=nzos_Version_3_0
CertValidation=crl
CertValidationPath=file:///tmp/file.crl
KeyStore=ohs1

このプロパティ・ファイルの内容は、次のとおりです。

  • 暗号のデフォルト値

  • キーストア

  • SSLバージョンv3

  • CRL検証が有効

  • 相互認証モード

例4: Oracle Virtual Directoryの暗号を含むプロパティ・ファイル

AuthenticationType=Server
Ciphers=SSL_RSA_WITH_RC4_128_MD5
SSLVersion=SSLv3,SSLv2Hello
KeyStore=ovdidentity.jks
TrustStore=ovdtrust.jks
SSLEnabled=true

このプロパティ・ファイルの内容は、次のとおりです。

  • 特定の暗号値

  • SSLバージョン

  • サーバー認証モード