プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Access Management管理者ガイド
11g リリース2 (11.1.2.3) for All Platforms
E61950-08
目次へ移動
目次

前
次

C.4 Access Manager用の証明書モード通信の構成

エージェントと同じモードで少なくとも1つのOAMサーバー・インスタンスが実行されているAccess Managerの証明書モード通信を構成します。

このトピックでは、Access Manager用の証明書モード通信の構成方法について説明します。次のタスクは証明書モードにのみ適用されます。

ノート:

簡易モードでは、バンドルされたAccess Manager-CA署名付き証明書が使用されて、次のタスクのほとんどは必要ありません。

前提条件

エージェントの登録中に、少なくとも1つのOAMサーバー・インスタンスがエージェントと同じモードで実行していることが必要です。そうでないと、登録は失敗します。ただし、エージェントの登録後、OAMサーバーの通信モードを変更できます。

タスク概要: OAMサーバーの証明書の追加には次のものが含まれます。

  1. 次の内容の確認:

  2. OAMサーバー用の証明書リクエストおよび秘密キーの生成

  3. OAMキーストア別名およびパスワードの取得

  4. 信頼できる、署名された証明書チェーンをキーストアへインポート

  5. 証明書詳細をAccess Manager設定に追加

  6. Webゲート用の秘密キーおよび証明書リクエストの生成

  7. 証明書を使用するようにWebゲートを更新

C.4.1 証明書モードの暗号化およびファイルについて

Webゲートの証明書リクエストによって、リクエスト・ファイルaaa_req.pemが生成されます。これを、OAMサーバーにより信頼されているルートCAに送信する必要があります。ルートCAは証明書を戻し、その後、10g Webゲートのインストール中または後のいずれかでインストールできます(11g Webゲートの場合、Webゲートのインストールおよび構成後にWebゲート・インスタンス領域に手動でコピーする必要があります)。

  • aaa_key.pem (Webゲート・キー・ファイルの予約名。変更できません)

  • aaa_cert.pem (Webゲート証明書ファイルの予約名。変更できません)

  • aaa_chain.pem (Webゲート側のCA証明書の予約名)

証明書モードでのコンポーネントのインストール中に、外部CAから取得した証明書が存在するかどうかを尋ねられます。証明書をまだ所有していない場合、リクエストできます。証明書を受領するまでは、WebGateを簡易モードで構成できます。ただし、証明書が発行されインストールされるまで、OAMデプロイメントは完了できません。

WebゲートをOAMエージェントとして登録するときに証明書モードを選択すると、エージェント・キー・パスワードを入力するフィールドが表示されます。11g WebGate登録の編集時に、モードがオープンから証明書へ、または簡易から証明書へ変更される場合にのみpassword.xmlが更新されます。証明書モードでは、一度生成されるとpassword.xmlは更新できません。エージェント・キー・パスワードを編集しても、新しいpassword.xmlは生成されません。

証明書リクエストを作成し、CAに送信する必要があります。証明書が戻されると、それをOAMサーバーにインポート(またはWebGateにコピー)する必要があります。

C.4.2 OAMサーバー用の証明書リクエストおよび秘密キーの生成

次の手順を使用して、秘密キー、証明書およびOAMサーバーのCA証明書を取得します。

ノート:

認定されたツールはopenSSLです。証明書およびキーをPEM形式で生成するには、他のツールではなくopenSSLを使用することをお薦めします。

OAMサーバーの秘密キーおよび証明書を取得するには:

  1. 次のような証明書リクエスト(aaa_req.pem)および秘密キー(aaa_key.pem)の両方を生成します。
    –OpenSSL req –new –keyout aaa_key.pem –out aaa_req.pem –utf8
     -nodes -config openssl_silent_ohs11g.cnf
    
  2. 証明書リクエスト(aaa_req.pem)を信頼されているCAに送信します。
  3. base64でのCA証明書をaaa_chain.pemとしてダウンロードします。
  4. base64およびDER形式の両方での証明書をaaa_cert.pemおよびaaa_cert.derとしてダウンロードします。
  5. 次のようにパスワードを使用して秘密キー(aaa_key.pem)を暗号化します。
    openssl rsa -in aaa_key.pem -passin pass: -out aaa_key.pem -passout pass: 
    ******** -des 

    ヒント:

    OAMサーバーの証明書リクエストを生成するための共通名は、クラスタリングされた環境ではOAMクラスタのロード・バランサ(MDC構成の場合にはグローバル・ロード・バランサ)のホスト名で、クラスタリングされていない環境ではOAMサーバーがデプロイされているホストの名前です。

C.4.3 OAMキーストア別名およびパスワードの取得

有効な管理者資格証明を持つユーザーは、次のタスクを実行して、認証に使用される指定キーストア内の証明書の別名と、証明書のインポートに必要なパスワードを取得できます。

OAMキーストア・パスワードを取得するには:

  1. Oracle Access Managementコンソールが実行中であることを確認してください。

  2. Oracle Access ManagementコンソールをホストしているコンピュータのOAMインストール・パスで、キーストア・パスワードの取得時に使用するWebLogic Scripting Toolを探します。次に例を示します。

    $ORACLE_IDM_HOME/common/bin/

    ここで、$ORACLE_IDM_HOMEはベース・インストール・ディレクトリで、/common/binはスクリプト・ツールが置かれているパスです。

  3. 次のWebLogic Scripting Toolを起動します。

    ·/ wlst.sh
    
  4. WLSTシェルで、接続するコマンドを入力してからリクエスト情報を入力します。次に例を示します。

    wls:/offline> connect() 
    Please enter your username [weblogic] :  
    Please enter your password [welcome1] :
    Please enter your server URL [t3://localhost:7001] :
    wls:/base_domain/serverConfig>
    
  5. 次のコマンドを入力して、場所を読取り専用のdomainRuntimeツリーに変更します(ヘルプを表示するにはhelp(domainRuntime)を使用します)。次に例を示します。

    wls:/OAM_AC> domainRuntime() 
    
  6. Oracle Enterprise Managerコンソールを使用して、OAMキーストアの資格証明を取得します。

    1. Oracle Enterprise Managerコンソールにログインします。

    2. Farm_base_domain→「WebLogicドメイン」→<ドメイン名>に移動します

    3. 右クリックして「システムMBeanブラウザ」を選択します。

    4. JpsCredentialStoreを検索します。

      または、「アプリケーション定義のMBean」→com.oracle.jps→「ドメイン: <ドメイン名>→JpsCredentialStore→JpsCredentialStoreに移動します。

    5. 右側のウィンドウの「操作」タブをクリックします。

    6. 「getPortableCredential」をクリックします。

    7. OAM_STOREまたはパラメータ1およびjksまたはパラメータ2を入力します。

    8. 「起動」をクリックします。

      返される値は、キーストアのパスワードです。

  7. 表示されるOAMキーストアのパスワードは、証明書のインポートに必要なため、最新の注意を払ってください。

  8. 次のトピックに進みます。

    「信頼できる、署名された証明書チェーンをキーストアへインポート」を参照してください。

C.4.4 信頼できる、署名された証明書チェーンをキーストアへインポート

Oracleが提供するimportcertツールは、既存の秘密キー、署名済証明書(公開キー)ファイルを指定のキーストア形式であるJKS (クライアント・キーストア形式)またはJCEKS (OAMサーバー・キーストア形式、たとえば .oamkeystore)へインポートするために使用します。

Access Managerに関連付けられたキーストアはPKCS8 DER形式の証明書のみを受け入れます。

  • PEM形式の証明書が認証局(CA)によって署名されている場合、次の手順ではAccess Managerに付属しているimportcertを使用してこれらの証明書を変換した後にインポートする方法を説明します。

  • PEM形式の証明書がない場合は、証明書リクエストを作成してCAで署名を受けた後で、次の手順を開始してください。

次にJDKバージョン8のkeytoolを使用するためのステップを示します。異なるバージョンのkeytoolの場合、そのJDKバージョンのドキュメントを参照してください。

ノート:

keytoolユーティリティを使用する場合、デフォルトのキー・ペア生成アルゴリズムはDSA (Digital Signature Algorithm)です。ただし、Oracle Access ManagementおよびWebLogic ServerはDSAをサポートしないので、別のキー・ペア生成および署名アルゴリズムを指定する必要があります。

前提条件

OAMキーストア別名およびパスワードの取得

信頼できる証明書チェーンをキーストアにインポートするには:

  1. CERTモードでOAMサーバーを設定するには、.oamkeystoreを変更する前に、オフラインWLSTコマンドを使用してアーティファクトをダウンロードします。

    downloadAccessArtifacts(domainHome="/new/path/base_domain", propsFile="/path/dbschema.properties")
    
    ---- contents of dbschema.properties ----
    oam.entityStore.schemaUser=MYPREFIX_OAM
    oam.entityStore.schemaPassword=Secret
    oam.entityStore.ConnectString=jdbc:oracle:thin:@dbhost.us.oracle.com:1521/servicename.us.oracle.com

    ノート:

    管理サーバーを再起動するたびに、変更がDBから取り込まれます。したがって、証明書モードの変更を保存するには、downloadAccessArtifactsおよびsaveAccessArtifactsを実行する必要があります。
  2. 次のパスでキーツールを探します。

    $MW_HOME/jdk8/bin/keytool
    
  3. importcert.zipを解凍して、次のパスでReadMeファイルを探します。

    $ORACLE_IDM_HOME/oam/server/tools/importcert/README 
    
  4. aaa_chain.pem: テキスト・エディタを使用してaaa_chain.pemファイルを変更して、CERTIFICATEブロック内に含まれるデータを除くすべてのデータを削除してからそのファイルを保存します。

      ----BEGIN CERTIFICATE-----
          ...
          CERTIFICATE
          ...
       -----END CERTIFICATE-----
    
  5. 次のコマンドと環境に応じた詳細を使用して、信頼された証明書チェーンをインポートします。次に例を示します。

    keytool -importcert -file aaa_chain.pem -trustcacerts -storepass <password>
    -keystore $ORACLE_HOME\user_projects\domains\$DOMAIN\config\fmwconfig\ 
    .oamkeystore -storetype JCEKS 
    
  6. 証明書を信頼するかどうか尋ねられたら、「yes」と入力します。

  7. aaa_cert.pem:

    1. TextPadを使用してaaa_certn.pemを編集し、CERTIFICATEブロック内に含まれるデータを除くすべてのデータを削除し、そのファイルを新しい場所に保管して元のファイルを保持します。次に例を示します。

        ----BEGIN CERTIFICATE-----
            ...
            CERTIFICATE
            ...
         -----END CERTIFICATE-----
      
    2. 次のコマンドを入力して署名された証明書(aaa_cert.pem)を、openSSLまたは他のツールを使用してDER形式に変換します。次に例を示します。

      openssl x509 -in aaa_cert.pem -inform PEM -out aaa_cert.der -outform DER
      
  8. aaa_key.pem:

    1. aaa_key.pemを編集し、CERTIFICATEブロック内に含まれるデータを除くすべてのデータを削除し、そのファイルを新しい場所に保管して元のファイルを保持します。次に例を示します。

        ----BEGIN CERTIFICATE-----
            ...
            CERTIFICATE
            ...
         -----END CERTIFICATE-----
      
    2. 次のコマンドを入力して秘密キー(aaa_key.pem)を、openSSLまたは他のツールを使用してDER形式に変換します。次に例を示します。

      openssl pkcs8 -topk8 -nocrypt -in aaa_key.pem -inform PEM -out aaa_key.der  
      -outform DER
      
  9. キーストアに署名付きDER形式の証明書をインポートします。次に例を示します。

    1. 環境に応じた次のコマンド行引数および詳細を使用してaaa_key.derをインポートします。次に例を示します。

      c:\Middleware\idm_home\oam\server\tools\importcert

      - java -cp importcert.jar
      oracle.security.am.common.tools.importcerts.CertificateImport  
      -keystore <> -privatekeyfile <path> -signedcertfile  <path> 
      -alias [ -storetype <> genkeystore <> -help]
      

      ノート:

      キーストア・パスワードと別名パスワードを、求められたら入力します。Windowsシステムでは、コロン(:)のかわりにセミコロン(;)をコマンド行で使用してください。

  10. 変更後、次のオフラインWLSTコマンドを使用して変更をDBにアップロードします: saveAccessArtifacts(domainHome="/mwhome/user_projects/domains/base_domain", propsFile="/path/dbschema.properties")。

  11. 「証明書詳細をAccess Manager設定に追加」に進みます。

C.4.5 証明書詳細をAccess Manager設定に追加

証明書をキーストアにインポートした後で、先ほど指定した別名およびパスワードを、Oracle Access ManagementコンソールのAccess Manager設定構成に追加します。

ノート:

簡易モードには明示的な構成は必要なく、即時可能な状態で提供されます。

証明書詳細をAccess Manager設定に追加する手順

  1. Oracle Access Managementコンソールで、ウィンドウの上部にある「構成」をクリックします。
  2. 「起動パッド」タブで、「設定」セクションの「表示」ドロップダウン・メニューから「Access Manager」を選択します。
  3. 「アクセス・プロトコル」セクションで、前の手順で取得した別名および別名パスワード詳細を入力します。次に例を示します。

    証明書モード構成

    PEMキーストア別名: my_keystore_alias

    PEMキーストア別名のパスワード: my_keystore_alias_pw

  4. 「適用」をクリックして、構成を保存します。
  5. ページを閉じます。
  6. OAMサーバー登録ページを開いて「プロキシ」タブをクリックし、「プロキシ・モード」「証明書」に変更して、「適用」をクリックします。
  7. OAMサーバーを再起動します。
  8. 次のトピックに進みます。

C.4.6 Webゲート用の秘密キーおよび証明書リクエストの生成

openSSLを使用して、秘密キー、証明書およびWebGateのCA証明書を取得します。

認定されたツールはopenSSLです。証明書およびキーをPEM形式で生成するには、他のツールではなくopenSSLを使用することをお薦めします。

WebGateの秘密キーおよび証明書を取得する手順

  1. 次のような証明書リクエスト(aaa_req.pem)および秘密キー(aaa_key.pem)の両方を生成します。
    openssl req -new -keyout aaa_key.pem -out aaa_req.pem -utf8 -nodes -sha256
  2. 証明書リクエスト(aaa_req.pem)を信頼されているCAに送信します。
  3. base64でのCA証明書をaaa_chain.pemとしてダウンロードします。
  4. base64形式での証明書をformat as aaa_cert.pemとしてダウンロードします。
  5. 次のようにパスワードを使用して秘密キー(aaa_key.pem)を暗号化します。
    openssl rsa -in aaa_key.pem -passin pass: -out aaa_key.pem -passout pass: 
    ******** -des -sha256

    ヒント:

    WebGatesの証明書リクエストを生成するための共通名は、エージェントがデプロイされているWeb Serverのホスト名です。

  6. 「証明書を使用するようにWebゲートを更新」に進みます。

C.4.7 証明書を使用するようにWebゲートを更新

すべての通信モード(オープン、簡易または証明書)で、エージェント登録はOracle Access Managementコンソールから更新する必要があります。

  • エージェントの登録: OAMエージェントの登録時に証明書モードを選択すると、エージェント・キー・パスワードを入力するフィールドが表示されます。

  • エージェントの編集/更新: 11g Webゲートの登録を編集するときに、モードがオープンから証明書、あるいは簡易から証明書へ変更される場合にのみpassword.xmlが更新されます。

    エージェント・キー・パスワードを編集しても、新しいpassword.xmlは生成されません。証明書モードでは、一度生成されるとpassword.xmlは更新できません。

前提条件

証明書詳細をAccess Manager設定に追加

WebGateエージェント登録の通信モードを更新する手順

  1. Oracle Access Managementコンソールで、ウィンドウの上部にある「アプリケーション・セキュリティ」をクリックします。
  2. 「起動パッド」タブで、「エージェント」をクリックします。
  3. 「検索」ページで、「Webゲートの検索コントロール」の説明に従って、検索基準を定義して目的のエージェント登録を開きます。
  4. エージェントの登録ページで「セキュリティ」オプションを見つけて、「証明書」(または「簡易」)をクリックします。
  5. 証明書モード: 「Webゲート用の秘密キーおよび証明書リクエストの生成」のステップ5の指定に従って、「エージェント・キー・パスワード」に入力します。
  6. 「適用」をクリックして変更を送信します。
  7. 更新したWebゲート・ファイルを、次のようにコピーします。

    11g Webゲート:

    • ObAccessClient.xml
    • cwallet.sso (11g Webゲートのみ)
    • password.xml
    • コピー元: $IDM_DOMAIN_HOME/output/AGENT_NAME

    • コピー先: $OHS_INSTANCE_HOME/config/OHS/ohs2/webgate/config

    10g Webゲート: ObAccessClient.xml

    • コピー元: $WLS_DOMAIN_HOME/output/AGENT_NAME

    • コピー先: $WebGate_install_dir/oblix/lib

    10g Webゲート: password.xml

    • コピー元: $WLS_DOMAIN_HOME/output/AGENT_NAME

    • コピー先: $WebGate_install_dir/oblix/config

  8. 「OAMサーバー用の証明書リクエストおよび秘密キーの生成」の際に作成された次のファイルをコピーします。

    11g Webゲート:

    • コピー元:

      • aaa_key.pem: WebGate11g_home/webgate/ohs/tools/openssl
      • aaa_cert.pem: CAからの受信後にこのファイルが保存された場所
      • aaa_chain.pem: CAからの受信後にこのファイルが保存された場所
    • コピー先: OHS_INSTANCE_HOME/config/OHS/ohs2/webgate/config

    10g Webゲート:

    • コピー元:

      • aaa_key.pem: 秘密キーファイルが生成された場所
      • aaa_cert.pem: CAからの受信後にこのファイルが保存された場所
      • aaa_chain.pem: CAからの受信後にこのファイルが保存された場所
    • コピー先: $WebGate_install_dir/oblix/config

  9. OAMサーバーおよびOracle HTTP Serverインスタンスを再起動します。