接続文字列の取得

IBM Cloud® Databases for Elasticsearch に接続するには、ユーザーと接続文字列が必要です。 配置の接続文字列は、 [概要] ページの[ エンドポイント] パネルに表示されます。 それらの文字列は、生成したすべての資格情報セットで使用できます。

エンドポイントパネル
エンドポイントパネル

Databases for Elasticsearch のデプロイメントは、管理者ユーザーを使用してプロビジョンされます。管理者パスワードを設定した後は、その資格情報を使用してデプロイメントに接続できます。

CLIで接続文字列を取得する

また、CLI からも接続ストリングを取得できます。

ibmcloud cdb deployment-connections example-deployment -u <newusername> [--endpoint-type <endpoint type>]

ibmcloud cdb deployment-connections コマンドに --all フラグを設定すると、完全な接続情報が戻されます。 「example-deployment」という名前のデプロイメントの接続情報すべてを取得するには、次のコマンドを使用します。

ibmcloud cdb deployment-connections example-deployment -u <newusername> --all [--endpoint-type <endpoint type>]

ユーザーを指定しない場合、deployment-connections コマンドによって、デフォルトでは管理ユーザーの情報が戻ります。 エンドポイント・タイプを指定しない場合、デフォルトでは接続ストリングによってパブリック・エンドポイントが戻ります。 デプロイメントに含まれるのがプライベート・エンドポイントのみの場合、--endpoint-type private を指定する必要があります。指定しないと、コマンドによってエラーが返ります。 ユーザーとエンドポイント・タイプは強制されません。 デプロイメントの任意のエンドポイントで任意のユーザーを使用できます (どちらもデプロイメントに存在する場合)。

ibmcloud cdb CLI コマンドを使用するには、Cloud Databasesプラグインをインストールする必要があります。

APIによる接続文字列の取得

API からユーザーの接続ストリングを取得するには、/users/{userid}/connections エンドポイントを使用します。 返される接続文字列で使用されていなければならないユーザーとエンドポイント・タイプ (パブリックまたはプライベート) をパスに指定する必要があります。 ユーザーとエンドポイント・タイプは強制されません。 デプロイメントの任意のエンドポイントで任意のユーザーを使用できます (どちらもデプロイメントに存在する場合)。

curl -X GET -H "Authorization: Bearer $APIKEY" 'https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/users/{user_type}/{user_id}/connections/{endpoint_type}'

その他のユーザーと接続ストリング

Databases for Elasticsearch デプロイメントへのアクセスは、管理者ユーザーだけに制限されません。 Service Credentials ページ、 IBM Cloud CLI、または IBM Cloud Databases API を使用してユーザーを作成できます。

デプロイメント上のすべてのユーザーは、パブリック・エンドポイントまたはプライベート・エンドポイントの接続ストリングなどの接続ストリングを使用できます。

UIからユーザーを作成する

  1. サービスのリソース詳細ページに移動します。
  2. サービス資格情報をクリックして、 _サービス資格情報_ページを開きます。
  3. **「新規資格情報」**をクリックします。
  4. 新規資格情報にわかりやすい名前を選びます。
  5. (オプション) 新規資格情報でパブリック・エンドポイントまたはプライベート・エンドポイントのどちらを使用するかを指定します。 _「インラインの構成パラメーターの追加」_フィールドで { "service-endpoints": "public" } / { "service-endpoints": "private" } のいずれかを使用すると、指定したエンドポイントを使用した接続文字列を生成できます。 エンドポイントは、接続文字列に含まれるホスト名を制御するため、その使用は強制されない。 パブリック・エンドポイントはデフォルトで生成されます。
  6. **「追加」**をクリックして新規資格情報をプロビジョンします。 ユーザー名とパスワード、および関連付けられる Elasticsearch ユーザーが自動的に生成されます。

新しい資格情報が表に表示されます。接続文字列は JSON として_「資格情報の表示」_のクリックしてコピーできるフィールドに表示されます。

CLIからユーザーを作成する

IBM Cloud CLI と Cloud Databases プラグインを使用してサービスを管理する場合は、cdb user-create を使用して新規ユーザーを作成できます。 例えば、「example-deployment」に新規ユーザーを作成するには、次のコマンドを使用します。

ibmcloud cdb user-create example-deployment <newusername> <newpassword>

タスクが終了したら、ibmcloud cdb deployment-connections コマンドを使用して、新規ユーザーの接続ストリングを取得できます。

APIでユーザーを作成する

サービスの_「概要」パネルに表示される「ファウンデーション・エンドポイント (Foundation Endpoint)」_には、API を使用してこのデプロイメントにアクセスするための基本 URL が示されています。 ユーザーを作成および管理するには、その基本 URL に /users エンドポイントを付けて使用します。

curl -X POST 'https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/users/{user_type}' \
-H "Authorization: Bearer $APIKEY" \
-H "Content-Type: application/json" \
-d '{"user": {"username": "user", "password": "v3ry-1-secUre-pAssword-2"}}'

ユーザーの接続文字列を取得するには、基本 URL に /users/{userid}/connections エンドポイントを付けて使用します。

UIで_サービス資格情報_にユーザーを追加する

CLI から新規ユーザーを作成しても、そのユーザーの接続文字列は_サービス資格情報_に自動的に入力されません。 ここにユーザーを追加するには、既存のユーザー情報を使用して新規資格情報を作成します。

JSON フィールドの_「インラインの構成パラメーターの追加」_にユーザー名およびパスワードを入力するか、JSON 情報を保管するファイルを指定します。 例えば、フィールドに {"existing_credentials":{"username":"Robert","password":"supersecure"}} と入力すると、ユーザー名「Robert」とパスワード「supersecure」が接続文字列に入力された_サービス資格情報_が生成されます。

既存のユーザーの資格情報を生成するときに、そのユーザーが存在するか検査されたり、そのユーザーが作成されたりすることはありません。

接続文字列の構成要素

HTTPS セクション

Service credentials ページで作成したクレデンシャルの "https" セクションには、Elasticsearch に接続するアプリケーションに適した情報が含まれています。

https/URI接続情報
フィールド名 索引 説明
Type 接続のタイプ - Elasticsearch の場合は「uri」。
Scheme URIのスキーム - Elasticsearch の場合は "https"。
Path URIのパス。
Authentication Username 接続に使用するユーザー名。
Authentication Password ユーザーのパスワードは、 $PASSWORD のように表示されます。
Authentication Method 認証が行われる方法。「direct」認証はドライバーによって処理されます。
Hosts 0... ホスト名と接続先ポート。
Composed 0... Scheme、Authentication、Host、Pathを組み合わせたURI。
Certificate Name データベース展開のためのサービス専有証明書の割り当て名。
Certificate Base64 base64 でエンコードされたバージョンの証明書
  • 0... は、配列の中にこれらのエントリーが1つ以上ある可能性があることを示す。

CLI セクション

Service credentials ページで作成されたクレデンシャルの "CLI" セクションには、cURL との接続に適した情報が含まれています。

curl接続情報
フィールド名 索引 説明
Bin 接続を作成するための推奨バイナリー。この場合は curl になります。
Composed デプロイメントへの接続を確立するための構成済みのコマンド。 このコマンドは、Bin 実行可能プログラムと Environment 変数設定を組み合わせ、コマンド・ライン・パラメーターとして Arguments を使用します。
Environment 環境変数として設定したキー/値のリスト。
Arguments 0... Bin フィールドに示されているコマンドに引数として渡される情報
Certificate Base64 アプリケーションが適切なサーバーに接続していることを確認するために使用される、サービス独自の証明書。 base64 でエンコードされています。
Certificate 名前 サービス専有証明書に割り当てられた名前。
Type この接続情報を使用するパッケージのタイプ。この場合は cli です。
  • 0... は、配列の中にこれらのエントリーが1つ以上ある可能性があることを示す。