既存のインストールへのセキュリティの追加

既存のOracle NoSQL Databaseインストールにセキュリティを追加する手順は、次のとおりです。

  1. KVStoreインスタンスを停止します。

    java -jar KVHOME/lib/kvstore.jar stop \
    -root KVROOT
  2. securityconfigユーティリティを実行し、セキュリティを備えた基本ストア構成を設定します。

    java -jar /home/kvuser/kvstore/lib/kvstore.jar securityconfig 
  3. config createコマンドを-pwdmgrオプションとともに使用して、ストアへのアクセスに必要なパスワードの保持に使用されるメカニズムを指定します。この場合、Oracle Walletが使用されます。

    config create -pwdmgr wallet -root KVROOT
    Creating SSL keystore 
    Enter a password for your keystore: 
  4. ストアのパスワードを入力してから、確認のために再入力します。構成ツールによって、いくつかのセキュリティ関連ファイルが自動生成されます。

    Enter a password for your keystore: ***********
    Re-enter the password: ***********
    Created files:
    security/security.xml
    security/store.keys
    security/store.trust
    security/store.wallet/cwallet.sso 
    security/client.security 
    security/client.trust  
  5. config add-securityコマンドを使用して、作成したセキュリティ構成を追加します。

    config add-security \
    -root KVROOT -secdir security  \
    -config config.xml 
  6. ストレージ・ノード・エージェント(SNA)を起動します。

    nohup java -jar KVHOME/lib/kvstore.jar start -root KVROOT&
  7. KVStoreサーバー・ホスト(node01)上で、runadminをセキュリティ・モードで起動します。このためには、次のコマンドを使用します。

    java -jar KVHOME/lib/kvstore.jar \
    runadmin -port 5000 -host node01
    -security KVROOT/security/client.security 

    このコマンドにより、SSLが接続メソッドとして設定され、生成されたトラストストア・ファイル(client.security)のコピーが指定されます。SSLプロパティの詳細は、「SSL通信プロパティ」を参照してください。

  8. ユーザーを作成します。この場合、ユーザーrootが定義されます。

    kv-> plan create-user -name root -admin -wait
    Enter the new password: ********
    Re-enter the new password: ********
    Executed plan 8, waiting for completion...
    Plan 8 ended successfully 

    ユーザーの作成および管理の詳細は、「ユーザー管理」を参照してください。

  9. この時点では、rootユーザーとしてストアに接続できます。ログインするには、この項で前に説明した-username <user>または-security <path to security file>のいずれかのrunadmin引数を使用できます。

    この例では、oracle.kv.securityプロパティが使用されます。ログインするには、次のコマンドを使用します。

    java -Doracle.kv.security=mylogin.txt \
    -jar KVHOME/lib/kvstore.jar runadmin 

    ファイルmylogin.txtは、認証用に追加のプロパティ設定が含まれる、client.securityファイルのコピーである必要があります。このファイルには次のような内容が含まれます。

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

    詳細は、「ユーザー・ログイン」を参照してください。