Oracle NoSQL Databaseプロキシ・サーバーの保護

正しく構成されている場合、プロキシはOracle NoSQL Databaseの安全なインストールにアクセスできます。プロキシ・サーバー自体は、Oracle NoSQL Databaseクライアントからのセキュアな接続をサポートしていません。これらの接続は、常に平文で、認証なしで実行されます。ただし、プロキシ・サーバーはセキュア・ストアに接続でき、その接続は認証および暗号化されます。

これを行うには、プロキシ・サーバーの起動時に-usernameおよび-securityのプロキシ・オプションを指定する必要があります。Oracle NoSQL Database Enterprise Editionを使用している場合は、Oracleウォレットを使用する可能性があります(これは、Enterprise Editionパッケージから取得された場合にkvliteで使用されるものです)。その場合は、プロキシ・サーバーの起動時にoraclepki.jarファイルも使用する必要があります。

プロキシ・サーバーを起動するときに、-securityオプションによって使用するセキュリティ・ファイルを指定します。kvliteを使用する場合は、新しいKVROOTディレクトリを作成する際に、セキュリティ・ファイルが作成されます。この場合は、KVROOT/security/user.securityを使用します。kvliteを使用せず、かわりにOracle NoSQL Databaseの保護された完全なインストールを実行する場合は、KVROOT/security/client.securityのコピーを作成し、クライアントがストアに安全に接続するために必要なパラメータを追加します。セキュリティ・ガイドSSLモデルを参照してください。

どちらの場合も、プロキシ・サーバーと同じホストにファイルを格納する必要があります。これは、次のようなファイルです(このインストールではOracleウォレットが使用されています)。

oracle.kv.ssl.trustStore=client.trust
oracle.kv.transport=ssl
oracle.kv.auth.username=admin
oracle.kv.ssl.protocols=TLSv1.2,TLSv1.1,TLSv1
oracle.kv.ssl.hostnameVerifier=dnmatch(CN\=NoSQL)
oracle.kv.auth.wallet.dir=user.wallet 

KVProxyを実行し、セキュアなOracle NoSQL Databaseデプロイメントにアクセスするには、次のようにします(この例では、Oracleウォレットを使用しているため、oraclepki.jarが指定されています)。

java -cp <KVHOME>/lib/kvclient.jar: \
<KVPROXY>/lib/kvproxy.jar:<KVHOME>/lib/oraclepki.jar \
oracle.kv.proxy.KVProxy -helper-hosts node01:5000 -port 5010 \
-store mystore -username admin -security mylogin

Nov 21, 2014 12:59:12 AM oracle.kv.proxy.KVProxy <init>
INFO: PS: Starting KVProxy server
Nov 21, 2014 12:59:12 AM oracle.kv.proxy.KVProxy <init>
INFO: PS: Connect to Oracle NoSQL Database mystore nodes : localhost:5000
Nov 21, 2014 12:59:13 AM oracle.kv.proxy.KVProxy <init>
INFO: PS:   ... connected successfully
Nov 21, 2014 12:59:13 AM oracle.kv.proxy.KVProxy startServer
INFO: PS: Starting listener ( Half-Sync/Half-Async server - 20
no of threads on port 5010) 

注意:

このプロキシ・サーバーはセキュア・ストアで使用されているため、プロキシ・サーバーのリスニング・ポート(前の例ではポート5010)を、認可されたクライアントを実行しているホストのみに制限するようにプロキシ・サーバーのファイアウォールを構成する必要があります。