メニュー
Amazon Relational Database Service
ユーザーガイド (API Version 2014-10-31)

Oracle ネイティブネットワーク暗号化

Amazon RDS は、Oracle ネイティブネットワーク暗号化 (NNE) をサポートしています。ネイティブネットワーク暗号化を使用すると、DB インスタンスとの間でデータ移動を暗号化できます。Amazon RDS は、すべてのエディションの Oracle で NNE をサポートしています。Amazon RDS では、db.t1.micro より大きい DB インスタンスクラスで Oracle ネイティブのネットワーク暗号化がサポートされます。

DB インスタンスで Oracle ネイティブネットワーク暗号化を使用するには、オプショングループに NATIVE_NETWORK_ENCRYPTION オプションを追加し、そのオプショングループを DB インスタンスと関連付けます。まず、NATIVE_NETWORK_ENCRYPTION オプションを持つオプショングループと DB インスタンスが関連付けられているかどうかを判断する必要があります。DB インスタンスが関連付けられているオプショングループを表示するには、RDS コンソール、AWS CLI のdescribe-db-instancesコマンド、または API アクション DescribeDBInstances を使用します。

注記

ネイティブネットワーク暗号化または Secure Sockets Layer を使用できますが、両方を使用することはできません。詳細については、「Oracle SSL」を参照してください。

Oracle ネイティブネットワーク暗号化の詳細な説明はこのガイドでは取り上げませんが、配置で使用するソリューションを決定する前に各アルゴリズムおよびキーの長所と短所を理解する必要があります。デフォルト以外の TDE 暗号化アルゴリズムは、Oracle バージョン 11.2.0.2.v7 以降でのみ機能する点に注意してください。Oracle ネイティブネットワークの暗号化で使用できるアルゴリズムとキーについては、Oracle ドキュメントの「Configuring Network Data Encryption」を参照してください。AWS セキュリティの詳細については、AWS セキュリティセンターを参照してください。

Amazon RDS で Oracle ネイティブネットワーク暗号化を使用する手順は次のとおりです。

  1. ネットワーク暗号化オプション (NATIVE_NETWORK_ENCRYPTION) が指設定されたオプショングループに DB インスタンスが関連付けられていない場合、既存のオプショングループを変更して NATIVE_NETWORK_ENCRYPTION オプションを追加するか、新しいオプショングループを作成し、そのグループに NATIVE_NETWORK_ENCRYPTION オプションを追加する必要があります。オプショングループの作成または変更の詳細については、「オプショングループを使用する」を参照してください。オプショングループへのオプションの追加の詳細については、「オプショングループにオプションを追加する」を参照してください。

  2. オプショングループに NATIVE_NETWORK_ENCRYPTION オプション設定を指定します。オプション設定の変更については、「オプションの設定を変更する」を参照してください。

    設定は次のとおりです。

    • SQLNET.ENCRYPTION_SERVER–クライアント、またはクライアントとして機能しているサーバーが DB インスタンスに接続する場合は、暗号化動作を指定します。指定できる値は、AcceptedRejectedRequested (デフォルト)、および Required です。Requested は、DB インスタンスでクライアントからのトラフィックを暗号化する必要がないことを示します。

    • SQLNET.CRYPTO_CHECKSUM_SERVER–クライアント、またはクライアントとして機能しているサーバーが、DB インスタンスに接続する場合は、データ整合性動作を指定します。指定できる値は、AcceptedRejectedRequested (デフォルト)、および Required です。Requested は、DB インスタンスでクライアントがチェックサムを実行できる必要がないことを示します。

    • SQLNET.ENCRYPTION_TYPES_SERVER–DB インスタンスにより使用される暗号化アルゴリズムのリストを指定します。DB インスタンスは、各アルゴリズムを順序どおりに使用し、アルゴリズムが成功するか、リストの末尾に到達するまでクライアントの復号を試みます。Amazon RDS は、Oracle による次のデフォルトリストを使用します。 順序を変更したり、DB インスタンスで受け入れられるアルゴリズムを制限したりすることができます。

      1. RC4_256: RSA RC4 (256 ビットのキーサイズ)

      2. AES256: AES (256 ビットのキーサイズ)

      3. AES192: AES (192 ビットのキーサイズ)

      4. 3DES112: 3-key Triple-DES (168 ビットの有効キーサイズ)

      5. RC4_128: RSA RC4 (128 ビットのキーサイズ)

      6. AES128: AES (128 ビットのキーサイズ)

      7. 2DES112: 3-key Triple-DES (80 ビットの有効キーサイズ)

      8. RC4_56: RSA RC4 (56 ビットのキーサイズ)

      9. DES: Standard DES (56 ビットのキーサイズ)

      10. RC4_40: RSA RC4 (40 ビットのキーサイズ)

      11. DES40: DES40 (40 ビットのキーサイズ)

    • SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER–チェックサムアルゴリズムを指定します。デフォルトは sha-1 ですが、md5 もサポートされます。

  3. オプショングループ内のオプションをリストし、NATIVE_NETWORK_ENCRYPTION オプションを追加して適切な設定を指定したことを確認します。オプショングループ内のオプションは、RDS コンソール、CLI コマンド describe-option-group-options、または Amazon RDS API アクション DescribeOptionGroupOptions を使用して表示できます。

  4. NATIVE_NETWORK_ENCRYPTION オプションが含まれるオプショングループに DB インスタンスを関連付けます。オプショングループへの DB インスタンスの関連付けの詳細については、「Oracle データベースエンジンを実行する DB インスタンスの変更」を参照してください。

Oracle ネイティブネットワーク暗号化を使用すると、クライアント側でネットワーク暗号化を指定することもできます。クライアント (DB インスタンスへの接続に使用されるコンピュータ) では、sqlnet.ora ファイルを使用してクライアント設定 SQLNET.CRYPTO_CHECKSUM_CLIENT、SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT、SQLNET.ENCRYPTION_CLIENT、および SQLNET.ENCRYPTION_TYPES_CLIENT を指定できます。詳細については、Oracle ドキュメントの「Oracle サーバーおよびクライアントのネットワークデータ暗号化と整合性の設定」を参照してください。

クライアントとサーバーで暗号化アルゴリズムが一致しない場合など、場合によっては、DB インスタンスがアプリケーションからの接続リクエストを拒否することがあります。

Oracle ネイティブネットワーク暗号化をテストするには、クライアント側で sqlnet.ora ファイルに以下の行を追加します。

Copy
DIAG_ADR_ENABLED=off TRACE_DIRECTORY_CLIENT=/tmp TRACE_FILE_CLIENT=nettrace TRACE_LEVEL_CLIENT=16

これらの行は、接続が試行されるとクライアントに /tmp/nettrace* というトレースファイルを生成します。トレースファイルには、接続に関する情報が含まれています。Oracle ネイティブネットワーク暗号化を使用した場合の接続に関連する問題の詳細については、Oracle ドキュメントの「暗号化と整合性のネゴシエーションについて」を参照してください。

関連トピック

このページの内容: