接続文字列の取得
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からユーザーを作成する
- サービスのリソース詳細ページに移動します。
- サービス資格情報をクリックして、 _サービス資格情報_ページを開きます。
- **「新規資格情報」**をクリックします。
- 新規資格情報にわかりやすい名前を選びます。
- (オプション) 新規資格情報でパブリック・エンドポイントまたはプライベート・エンドポイントのどちらを使用するかを指定します。 _「インラインの構成パラメーターの追加」_フィールドで
{ "service-endpoints": "public" }/{ "service-endpoints": "private" }のいずれかを使用すると、指定したエンドポイントを使用した接続文字列を生成できます。 エンドポイントは、接続文字列に含まれるホスト名を制御するため、その使用は強制されない。 パブリック・エンドポイントはデフォルトで生成されます。 - **「追加」**をクリックして新規資格情報をプロビジョンします。 ユーザー名とパスワード、および関連付けられる 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 に接続するアプリケーションに適した情報が含まれています。
| フィールド名 | 索引 | 説明 |
|---|---|---|
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 との接続に適した情報が含まれています。
| フィールド名 | 索引 | 説明 |
|---|---|---|
Bin |
接続を作成するための推奨バイナリー。この場合は curl になります。 |
|
Composed |
デプロイメントへの接続を確立するための構成済みのコマンド。 このコマンドは、Bin 実行可能プログラムと Environment 変数設定を組み合わせ、コマンド・ライン・パラメーターとして Arguments を使用します。 |
|
Environment |
環境変数として設定したキー/値のリスト。 | |
Arguments |
0... | Bin フィールドに示されているコマンドに引数として渡される情報 |
Certificate |
Base64 | アプリケーションが適切なサーバーに接続していることを確認するために使用される、サービス独自の証明書。 base64 でエンコードされています。 |
Certificate |
名前 | サービス専有証明書に割り当てられた名前。 |
Type |
この接続情報を使用するパッケージのタイプ。この場合は cli です。 |
0...は、配列の中にこれらのエントリーが1つ以上ある可能性があることを示す。