高速ホーム・プロビジョニングの認証

高速ホーム・プロビジョニング(RHP) REST APIを使用する場合は、次の手順を実行します。

  1. RESTユーザーの登録

    CRSユーザーに関連付けられているRESTユーザーを登録するには、次のコマンドを実行します。

    rhpctl register user -user <restUserName> -restuser -email <useremail> -rhpuser <crsUser>

    前述のコマンドに応じて、パスワードの入力を求められます。

    注意:

    CRSユーザーは、RHPの設定に使用したユーザー、または同様のロールと権限を持つユーザーです。
    説明:
    • <restUserName>オプションは、RHPサーバーに送信される各RESTリクエストの認証に使用される名前です。

    • <useremail>オプションは、有効な場合に通知が送信される電子メール・アドレスです。

    • <crsUser>オプションは、同様のロールとRHP操作を実行する権限を持つユーザーの名前です。

    例:

    CRSユーザーに関連付けられた電子メールid rest@email.comrestというRESTユーザーを登録するには、CRSユーザーとしてRHPサーバーにログオンし、次のコマンドを実行します。

    $ $ORACLE_HOME/bin/rhpctl register user -user rest -restuser -email rest@email.com -rhpuser $USER

  2. RHPサーバーでHTTPSを有効にします。

    高速ホーム・プロビジョニング(RHP) REST APIの場合、証明書はRHPサーバーから直接取得されます。HTTPSは、RHPサーバーでデフォルトで有効になっています。

    RHPサーバーでHTTPSが有効になっていない場合は、RHPサーバーにログオンして次の手順を実行します。

    1. RHPサーバーを停止します。

      $ $ORACLE_HOME/bin/srvctl stop rhpserver

    2. RHPサーバーでHTTPSを有効にします。

      $ $ORACLE_HOME/bin/srvctl modify rhpserver -enableHTTPS YES

    3. RHPサーバーを起動します。

      $ $ORACLE_HOME/bin/srvctl start rhpserver

  3. HTTPSが有効な場合、RHP REST API証明書をエクスポートします。

    CRSユーザーとして、または同様のロールまたは権限を持つユーザーとしてRHPサーバーにログオンしている場合、このタスクを実行できます。

    1. 証明書をエクスポートする書込み権限があるパスにディレクトリを変更します。

      $ cd ~

    2. 次のコマンドを実行します。

      $ $ORACLE_HOME/bin/crskeytoolctl -printrootcert

      クラスタ・ルート公開証明書は、<ClusterGUID.pem>に出力されます。

      注意:

      証明書は、RHPサーバーが起動するたびに作成されます。すべてのクライアントは、RHPサーバーが起動されるたびに証明書を更新する必要があります。
  4. RHP REST APIの動作を確認します。

    RHP REST APIの動作を検証するには、すべてのRESTリクエストで使用されるRHPサーバー・ホスト名、および登録済ユーザーのユーザーとパスワードが必要です(手順2を参照)。

    1. 環境変数CURL_CA_BUNDLEに、次のコマンドを使用してエクスポートされるpem証明書への絶対パスを設定します。

      $ export CURL_CA_BUNDLE=/home/crsUser/<clusterGUID>.pem

      注意:

      環境変数を削除するには、次のコマンドを実行します。

      $ unset CURL_CA_BUNDLE

    2. RHPサーバーが実行されているノードの名前を検索するには、次のコマンドを実行します。

      $ $ORACLE_HOME/bin/srvctl status rhpserver

      レスポンスに、ノードの名前およびRHPサーバーのステータスを受け取ります。

    3. 次のcURLコマンドを使用して、作業用コピーを問い合せます。これにより、ユーザー・パスワードの入力が要求されます。

      curl -u <restUser> http://<RHPServerHostName>:8894/rhp-restapi/rhp/workingcopies

      例:

      作業用コピーの名前を取得するには、RHPサーバーにログオンして次のコマンドを実行します。

      $ curl -u rest https://$HOSTNAME:8894/rhp-restapi/rhp/workingcopies

      これにより、パスワードの入力が要求されます。

      ユーザー"rest"のホスト・パスワードを入力します。

      パスワードを入力し、レスポンスにRHPサーバーで使用可能な作業用コピーの名前を受け取ります。作業用コピーがない場合は、レスポンスに空のitems配列を受け取ります。

      {"items":[ ]}.