IBM Cloud Docs
创建用户和获取连接字符串

创建用户和获取连接字符串

要连接到 IBM Cloud® Messages for RabbitMQ,您需要一些用户和一些连接字符串。 部署的连接字符串显示在 " 仪表板概述" 的 " 端点 " 面板中。

图 1。 端点"
"端点" 面板

您还可以从 CLIAPI中抓取连接字符串。

Messages for RabbitMQ 部署由管理用户供应,在 设置管理密码后,可以使用其凭证来连接到部署。

更多用户的凭证和连接字符串

对 Messages for RabbitMQ 部署的访问权不限于 root 用户。 您可以使用 服务凭证 面板, IBM CLI 或通过 IBM Cloud Databases API 来创建用户。

部署上的所有用户都可以使用连接字符串,包括公共或专用端点的连接字符串。

并非所有用户都具有管理 RabbitMQ的相同特权。 要了解有关哪些用户获得哪些特权的更多信息,请参阅 " 管理用户 " 页面。

服务凭证 UI

  1. 浏览至服务的服务仪表板。
  2. 单击 服务凭证 以打开 " 服务凭证 " 面板。
  3. 单击 新建凭证
  4. 选择新凭证的描述性名称。
  5. (可选) 指定新凭证是使用公共端点还是专用端点。 在 添加内联配置参数 字段中使用 { "service-endpoints": "public" } / { "service-endpoints": "private" } 来生成使用指定端点的连接字符串。 未强制使用端点。 它控制连接字符串中的主机名。 缺省情况下会生成公共端点。
  6. 单击 添加 以供应新凭证。 将自动生成用户名和密码以及关联的 RabbitMQ 用户。

新凭证显示在表中,连接字符串在 " 查看凭证" 下的 "单击以复制" 字段中以 JSON 形式提供。

通过 CLI

如果通过 IBM Cloud CLI 和 云数据库插件管理服务,那么可以使用 cdb user-create创建新用户。 例如,要为 "example-deployment" 创建新用户,请使用以下命令。

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

完成该任务后,可以使用 ibmcloud cdb deployment-connections 命令检索新用户的连接字符串。

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

完整连接信息由带有 --all 标志的 ibmcloud cdb deployment-connections 命令返回。 要检索名为 "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 访问此部署的基本 URL。 要创建和管理用户,请将基本 URL 与 /users 端点配合使用。

curl -X POST 'https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/users' \
-H "Authorization: Bearer $APIKEY" \
-H "Content-Type: application/json" \
-d '{"username":"jane_smith", "password":"newsupersecurepassword"}'

要检索用户的连接字符串,请将基本 URL 与 /users/{userid}/connections 端点配合使用。 必须在路径中指定在返回的连接字符串中使用的用户和端点类型 (公共或专用)。 未强制实施用户和端点类型。 您可以将部署上的任何用户与任一端点配合使用 (如果这两个端点都存在于您的部署上)。

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

将用户添加到 服务凭证

通过 CLI 或 API 创建新用户不会自动将该用户的连接字符串填充到 _服务凭证_中。 如果要将其添加到该处,那么可以使用现有用户信息创建新凭证。

在 JSON 字段 _添加内联配置参数_中输入用户名和密码,或者指定用于存储 JSON 信息的文件。 例如,{"existing_credentials":{"username":"Robert","password":"supersecure"}}

从现有用户生成凭证不会检查或创建该用户。

连接字符串细分

amqps 部分

"amqps" 部分包含适用于与 RabbitMQ建立连接的应用程序的信息。

表 1. RabbitMQ/uri 连接信息
字段名称 索引 描述
Type 连接类型-对于 RabbitMQ,它是 "uri"
Scheme URI 的方案-对于 RabbitMQ,它是 "amqps"
Path URI 的路径
Authentication Username 用于连接的用户名。
Authentication Password 用户的密码-可能显示为 $PASSWORD
Authentication Method 如何进行认证; "直接" 认证由驱动程序处理。
Hosts 0... 要连接到的主机名和端口
Composed 0... 组合方案,认证,主机和路径的 URI
Certificate Name 用于数据库部署的自签名证书的已分配名称
Certificate Base64 证书的 base64 编码版本。
  • 0... 指示数组中可能有一个或多个这些条目。

有关使用此信息进行连接的更多信息,请参阅 连接外部应用程序 页面。

stomp_ssl 部分

stomp_ssl 部分包含 STOMP 客户机连接到部署所需的信息。

表 2. RabbitMQ/stomp_ssl 连接信息
字段名称 索引 描述
Type 连接类型-对于 STOMP ,它是 stomp
Authentication Username 用于连接的用户名。
Authentication Password 用户的密码-可能显示为 $PASSWORD
Authentication Method 如何进行认证; "直接" 认证由驱动程序处理。
Hosts 0... 要连接到的主机名和端口,还包含协议名称 "stomp-ssl"
Composed 0... 用于组合认证,主机和 TLS/SSL 的 URI
ssl 连接所需的 TLS/SSL 设置。 应该始终为 true
Certificate Name 用于数据库部署的自签名证书的已分配名称
Certificate Base64 证书的 base64 编码版本。
  • 0... 指示数组中可能有一个或多个这些条目。

mqtts 部分

mqtts 部分包含 MQTT 客户机连接到部署所需的信息。

表 2. RabbitMQ/mqtts 连接信息
字段名称 索引 描述
Type 连接类型-对于 MQTTS ,它是 uri
Scheme URI 的方案-在本例中为 mqtts
Authentication Username 用于连接的用户名。
Authentication Password 用户的密码-可能显示为 $PASSWORD
Authentication Method 如何进行认证; "直接" 认证由驱动程序处理。
Hosts 0... 要连接到的主机名和端口。
Composed 0... 用于连接的组合认证,主机和端口的 URI。
Certificate Name 用于数据库部署的自签名证书的已分配名称
Certificate Base64 证书的 base64 编码版本。
  • 0... 指示数组中可能有一个或多个这些条目。

CLI 和 https 部分

CLI 部分包含适用于与 RabbitMQ建立连接的管理插件和命令行客户机的信息。

表 3。 rabbitmqadmin/cli 连接信息
字段名称 索引 描述
Bin 用于创建连接的建议二进制文件; 在此情况下为 rabbitmqadmin
Composed 用于与部署建立连接的格式化命令。 该命令组合了 Bin 可执行文件, Environment 变量设置,并使用 Arguments 作为命令行参数。
Environment 设置为环境变量的键/值的列表。
Arguments 0... 作为参数传递给 "Bin" 字段中显示的命令的信息。
Certificate Base64 自签名证书,用于确认应用程序连接到相应的服务器。 它是 base64 编码的。
Certificate Name 自签名证书的已分配名称。
Type 使用此连接信息的包的类型; 在本例中为 cli
  • 0... 指示数组中可能有一个或多个这些条目。

https 部分包含可用于通过 Web 浏览器访问 RabbitMQ 管理插件的信息。

表 4。 https/uri 连接信息
字段名称 索引 描述
Type 连接类型-对于 RabbitMQ,它是 uri
Scheme URI 的方案-对于 RabbitMQ,它是 https
Path URI 的路径
Authentication Username 用于连接的用户名。
Authentication Password 用户的密码-可能显示为 $PASSWORD
Authentication Method 如何进行认证; "直接" 认证由驱动程序处理。
Hosts 0... 要连接到的主机名和端口
Composed 0... 组合方案,认证,主机和路径的 URI
Certificate Name 用于数据库部署的自签名证书的已分配名称
Certificate Base64 证书的 base64 编码版本。
  • 0... 指示数组中可能有一个或多个这些条目。

有关使用此信息的更多信息,请参阅 与 RabbitMQ 管理插件连接 页面。