ネットワークの暗号化および整合性の使用
Oracle Database Exadata Cloud at Customerデータベースへの接続を保護するために、Oracle Net Servicesのネイティブの暗号化および整合性機能を使用できます。
ネットワーク・データを暗号化すると、データの機密が保たれ、ネットワークを通過する際に権限のないユーザーがデータを閲覧できなくなります。 さらに、整合性アルゴリズムによってデータ変更および違法な再生から保護されます。
Oracle Databaseは、Advanced Encryption Standard (AES)、DES、3DESおよびRC4の対称暗号システムを提供して、Oracle Net Servicesトラフィックの機密保護を図ります。 整合性攻撃から保護するためにMessage Digest 5 (MD5)アルゴリズムまたはSecure Hash Algorithm (SHA-1およびSHA-2)のキー付き、順序付き実装も提供します。
デフォルトでは、Exadata Cloud at Customerのデータベース・デプロイメントは、Oracle Net Servicesのネイティブの暗号化および整合性を有効にするように構成されています。 また、デフォルトでは、Oracle Net Servicesクライアントは、適切に構成されたサーバーへの接続時にネイティブの暗号化および整合性を有効にするように構成されています。 Oracle Net Servicesクライアントがネイティブの暗号化および整合性の使用を明示的に拒否するように構成されている場合、接続の試行は失敗します。
構成を確認し、次のようにOracle Net Servicesのネイティブの暗号化および整合性の使用を検証できます。 Oracle Net Servicesのネイティブの暗号化および整合性の構成の詳細は、リリース18、12.2または12.1の『Oracle Databaseセキュリティ・ガイド』のOracle Databaseのネットワーク暗号化およびデータ整合性の構成に関する項、またはリリース11.2の『Database Advanced Security管理者ガイド』のOracleサーバーおよびクライアントに対するネットワーク・データ暗号化および整合性の構成に関する項を参照してください。
Exadata Cloud at Customer環境の確認
ノート:
この手順は、単一のコンピュート・ノードと、一連のOracleバイナリを共有する単一のデータベースまたはデータベースのグループに関連しています。 Exadata Cloud at Customerの場合、構成設定が環境内のすべてのコンピュート・ノードおよびデータベース・デプロイメント間で一貫していることを確認する必要があります。-
コマンド・シェルで、
oracleユーザーとしてコンピュート・ノードに接続します。 Secure Shell (SSH)経由でのコンピュート・ノードへの接続を参照してください。 -
Oracle Database環境変数設定を構成します:
$ . oraenv -
sqlnet.ora構成ファイルの場所にディレクトリを変更します。 次に例を示します。$ cd $ORACLE_HOME/network/admin/dbname $ ls sqlnet.ora sqlnet.ora -
sqlnet.oraファイルを表示し、次のパラメータ設定が含まれていることを確認します。SQLNET.ENCRYPTION_SERVER = required SQLNET.CRYPTO_CHECKSUM_SERVER = requiredrequired設定により、暗号化または整合性サービスが有効になり、クライアント側がセキュリティ・サービスに対して有効になっていない場合は接続できません。 これは、Exadata Cloud at Customerでのデータベース・デプロイメントのデフォルト設定です。
Oracle Net Servicesクライアント構成の確認
次の手順では、Oracle Net Servicesクライアント構成でネイティブの暗号化および整合性が有効になっていることを確認するために必要な基本ステップについて概説します。
-
コマンド・シェルで、Oracle Net Servicesクライアントに接続します。
-
次の例のように、ディレクトリを
tnsnames.oraおよびsqlnet.ora構成ファイルの場所に変更します:$ cd $ORACLE_HOME/network/admin $ ls *.ora sqlnet.ora tnsnames.ora -
sqlnet.oraファイルを表示し、次のパラメータ設定が含まれていないことを確認します。SQLNET.ENCRYPTION_CLIENT = rejected SQLNET.CRYPTO_CHECKSUM_CLIENT = rejectedrejected設定により、サーバーが要求している場合でも、暗号化および整合性サービスが明示的に無効になります。 暗号化または整合性サービスの設定がrejectedになっているクライアントがrequiredに設定されているサーバーに接続すると、「ORA-12660: 暗号化または暗号チェックサム・パラメータに互換性がありません。」というエラーで接続は失敗します。Exadata Cloud at Customer環境では、Oracle Net Servicesのネイティブの暗号化および整合性がデフォルトで有効になっているため、
rejected以外のパラメータ設定を使用したり、設定をまったく使用しない場合、ネイティブの暗号化および整合性が使用されます。
ネイティブの暗号化および整合性の使用の検証
Oracle Databaseに接続し、各接続に関連付けられているネットワーク・サービス・バナー・エントリを調べることで、Oracle Net Servicesのネイティブの暗号化および整合性の使用を検証できます。 この情報は、V$SESSION_CONNECT_INFOビューのNETWORK_SERVICE_BANNER列に格納されています。 次の例は、現在の接続に関連付けられたネットワーク・サービス・バナー・エントリを表示するために使用されるSQLコマンドを示しています:
SQL> select network_service_banner
from v$session_connect_info
where sid in (select distinct sid from v$mystat);次の出力例は、使用中のアルゴリズムなど、使用可能な暗号化サービスおよび暗号チェックサム(整合性)サービスに関するバナー情報を示しています。
NETWORK_SERVICE_BANNER
-------------------------------------------------------------------------------------
TCP/IP NT Protocol Adapter for Linux: Version 12.1.0.2.0 - Production
Encryption service for Linux: Version 12.1.0.2.0 - Production
AES256 Encryption service adapter for Linux: Version 12.1.0.2.0 - Production
Crypto-checksumming service for Linux: Version 12.1.0.2.0 - Production
SHA1 Crypto-checksumming service adapter for Linux: Version 12.1.0.2.0 - ProductionOracle Netのネイティブの暗号化および整合性が使用されていない場合でも、バナー・エントリには使用可能なセキュリティ・サービス(Oracle Databaseソフトウェアにリンクされているサービス)のエントリが含まれています。 しかし、接続に使用されている特定のアルゴリズムを示すエントリはありません。 出力は次のようになります。
NETWORK_SERVICE_BANNER
-------------------------------------------------------------------------------------
TCP/IP NT Protocol Adapter for Linux: Version 12.1.0.2.0 - Production
Encryption service for Linux: Version 12.1.0.2.0 - Production
Crypto-checksumming service for Linux: Version 12.1.0.2.0 - Production