Oracleコネクタ > Oracleへの接続 > 前提条件
  

前提条件

Oracleコネクタを使用すると、Oracleデータベース認証またはKerberos認証を使用して、SSL対応のOracleデータベースに接続できます。
SSLが有効なOracleデータベースに接続するには、SSL設定を参照してください。
Kerberos認証を使用してOracleデータベースに接続するには、Kerberos認証を参照してください。

SSL設定

Oracleデータベース認証またはKerberos認証を使用した安全なOracle接続を使用して、SSL対応のOracleデータベースに接続する前に、組織管理者は前提条件のタスクを実行する必要があります。
  1. 1トラストストア証明書を作成します。
  2. 2キーストア証明書を作成します。Oracleデータベースでクライアント認証が有効になっている場合にのみ、この操作を実行します。

トラストストアへのサーバー証明書の追加

サーバー証明書をクライアントのトラストストアに追加して、安全なOracle接続を確立します。
次のkeytoolコマンドを使用して、サーバー証明書をクライアントのトラストストアに追加します。
keytool -import -trustcacerts -alias ca -file <server certificate with path> -keystore
<name of truststore to be generated with extension> -storepass <password for truststore> -storetype <store type>
例として、C:\SSL\oracleにサーバー証明書oratls_server.certがあるとします。
    1次のコマンドを実行し、トラストパスワード「password」を使用してトラストストアtruststore.jksを作成します。
    C:\SSL\oracle> keytool -import -trustcacerts -alias ca -file oratls_server.cert -keystore truststore.jks -storepass password -storetype JKS
    2次のコマンドを実行し、トラストストアパスワード「password」を使用してPKCS12トラストストアtruststore.p12を作成します。
    C:\SSL\oracle> keytool -import -trustcacerts -alias ca -file oratls_server.cert -keystore truststore.p12 -storepass password -storetype PKCS12

キーストア証明書の作成

Oracleサーバーでクライアント認証が有効になっている場合にキーストア証明書を作成します。Oracle接続を確立するため、クライアント証明書をすべて含むキーストア証明書を作成する必要があります。
次の手順を実行してキーストア証明書を作成します。
    1OracleクライアントをOracleのWebサイトからダウンロードし、インストールします。
    2次のコマンドを実行してOracleウォレットを作成します。
    orapki wallet create -wallet <Path where wallet is to be created> -auto_login -pwd <wallet password>
    3次のコマンドを実行して、Oracleウォレットへの自己署名クライアント証明書を作成します。
    orapki wallet add -wallet <Path where wallet is to be created> -dn "CN=<common name>, OU=<organization unit>, O=<organization>, L=<locality>, ST=<state>, C=<country>" -keysize <key size in bits> -self_signed-validity <number of days> -pwd <wallet password>
    コマンドが実行され、指定された場所にpkcs12証明書が作成されます。
    サーバー証明書から、CN=<共通名>、OU=<組織単位>, O=<組織>、L=<市区町村>、ST=<都道府県>、C=<国>、keysize <キーサイズ(ビット)>、self_signed -validity <日数>、およびpwd <ウォレットパスワード>の値を指定する必要があります。
    4 次のorapkiコマンドを実行して自己署名クライアント証明書をエクスポートします。
    orapki wallet export -wallet <wallet path> -dn "CN=<common name>, OU=<organization unit>, O=<organization>, L=<locality>, ST=<state>, C=<country>" -cert <Name of the exported certificate with path>
    -dnコマンドでクライアント証明書を一意に特定します。サーバーウォレットにはインストール済みのクライアント証明書が複数含まれているためです。
    5自己署名クライアント証明書をサーバーOracleウォレットにインストールします。
    注: 自己署名クライアント証明書をサーバーデータベースOracleウォレットに追加しないと、クライアント認証は失敗します。
    6 サーバー証明書を、信頼されている証明書としてOracleウォレットに追加します。
    次のコマンドを実行してサーバー証明書を追加します。
    orapki wallet add -wallet <wallet path> -trusted_cert -cert <Name of the server certificate with path> -pwd <wallet password>
    注: すべてのorapkiコマンドに同じウォレットパスワードを使用する必要があります。
    サンプルタスク
    次のタスクを実行してキーストア証明書を作成します。
    1. a次のコマンドを実行してOracleウォレットを作成します。
    2. C:\app\client\ksuwalka\product\12.1.0\client_1\BIN>orapki wallet create -wallet C:\app\client\ksuwalka\product\12.1.0\client_1\owm\wallet -auto_login -pwd oracle4u
    3. b次のコマンドを実行して、Oracleウォレットへの自己署名クライアント証明書を作成します。
    4. C:\app\client\ksuwalka\product\12.1.0\client_1\BIN>orapki wallet add -wallet C:\app\client\ksuwalka\product\12.1.0\client_1\owm\wallet -dn "CN=inw1pc07_kriti, OU=DEV, O=infa,L=blr, ST=ka, C=IN" -keysize 2048 -self_signed -validity 3650 -pwd oracle4u
      ewallet.p12証明書が次の場所に作成されます。C:\app\client\ksuwalka\product\12.1.0\client_1\owm\wallet
    5. c次のorapkiコマンドを実行して自己署名クライアント証明書をエクスポートします。
    6. C:\app\client\ksuwalka\product\12.1.0\client_1\BIN>orapki wallet export -wallet C:\app\client\ksuwalka\product\12.1.0\client_1\owm\wallet -dn "CN=inw1pc07_kriti, OU=DEV, O=infa,L=blr, ST=ka, C=IN" -cert C:\Users\ksuwalka\Desktop\client_inw1pc07.cert
    7. dサーバー証明書を、信頼されている証明書としてOracleウォレットに追加します。次のコマンドを実行してサーバー証明書を追加します。
    8. C:\app\client\ksuwalka\product\12.1.0\client_1\BIN>orapki wallet add -wallet C:\app\client\ksuwalka\product\12.1.0\client_1\owm\wallet -trusted_cert -cert C:\SSL\oracle\oratls_server.cert -pwd oracle4u
      キーストアC:\app\client\ksuwalka\product\12.1.0\client_1\owm\wallet\ewallet.p12を、キーストアパスワードoracle4uで使用できるようになりました。

Kerberos認証

必要な構成ファイルをSecure Agentマシンに配置することで、Kerberos認証を使用してOracleデータベースに接続できます。また、Kerberos認証を使用して、SSL対応のOracleデータベースに接続することもできます。
Oracleに接続するためにKerberos認証を設定する場合は、次のガイドラインを考慮してください。

Kerberos認証の設定

Kerberos認証を使用してLinuxまたはWindows上のOracleに接続する前に、組織の管理者は前提条件のタスクを実行する必要があります。
  1. 1Java Authentication and Authorization Service構成ファイル(JAAS)を設定するには、次のタスクを実行します。
    1. aSecure Agentマシン上にJAAS構成ファイルを作成します。
    2. b以下のエントリをJAAS構成ファイルに追加します。
    3. JDBC_DRIVER_01 {
      com.sun.security.auth.module.Krb5LoginModule required useTicketCache=true;
      };
  2. 2krb5.confファイルを設定するには、次のタスクを実行します。
    1. aSecure Agentマシン上にkrb5.confファイルを作成します。
    2. bKey Distribution Center(KDC)と管理サーバーの詳細を、次の形式でkrb5.confファイルに追加します。
    3. [libdefaults]
      default_realm = <Realm name>
      forwardable = true
      ticket_lifetime = 24h

      [realms]
      <REALM NAME> = {
      kdc = <Location where KDC is installed>
      admin_server = <Location where KDC is installed>
      }
      [domain_realm]
      <domain name or host name> = <Domain name or host name of Kerberos>
      <domain name or host name> = <Domain name or host name of Kerberos>
  3. 3Secure Agentマシン上で次の環境変数を設定します。
  4. 必要な環境変数については、環境変数の設定を参照してください。
  5. 4Secure Agentを再起動します。
  6. 5Secure Agentマシン上で資格情報キャッシュファイルを生成し、Kerberos認証を使用してOracleに接続するには、次のタスクを実行します。
    1. aSecure Agentマシンで次のコマンドを実行し、Oracleユーザー名とレルム名を指定します。
    2. Kinit <user name>@<realm_name>
    3. b要求されたら、Kerberosプリンシパルユーザーのパスワードを入力します。

環境変数の設定

Kerberos認証を使用してOracleに接続するには、Secure Agentマシン上で必要な環境変数を設定する必要があります。
以下の環境変数を設定します。
環境変数を設定した後に、Secure Agentを再起動する必要があります。
または、Oracle接続の作成時に環境変数を追加することもできます。
接続を設定してKerberos認証を使用する場合に環境変数を追加するには、Oracle接続の[メタデータの詳細接続プロパティ]フィールドにKRB5CONFIGKRB5CCNAME、およびJAASCONFIGプロパティを追加する必要があります。
例えば、次の形式でプロパティを追加します。
KRB5_CONFIG=<Absolute path of the Kerberos configuration file>\krb5.conf;KRB5CCNAME=<Absolute path of the credential cache file>/<File name>;JAASCONFIG=<Absolute path of the JAAS config file>\<File name>.conf
注: キーと値のペアはそれぞれセミコロンで区切ってください。