IBM Cloud Docs
Conexión de una aplicación externa

Conexión de una aplicación externa

Sus aplicaciones y controladores utilizan series de conexión para realizar una conexión con IBM Cloud® Messages for RabbitMQ. Su despliegue tiene series de conexión específicamente para controladores, clientes y aplicaciones. Las series de conexión se muestran en el panel Puntos finales de la Visión generaldel despliegue, y también se pueden recuperar desde el plugin de CLICloud Databases y la APICloud Databases.

Las series de conexión pueden ser utilizadas por cualquiera de las credenciales que haya creado en el despliegue. Aunque puede utilizar el usuario administrador para todas las conexiones y aplicaciones, quizás sea mejor crear usuarios específicamente para conectarse a las aplicaciones. Para obtener más información, consulte Creación de usuarios y obtención de series de conexión.

Conexión con un controlador de un lenguaje

La información que necesita un controlador para realizar una conexión con el despliegue se encuentra en la sección amqps de las series de conexión. La tabla contiene un desglose para referencia.

Tabla 1. RabbitMQ/uri
Nombre de campo Índice Descripción
Type Tipo de conexión: para RabbitMQ, es uri
Scheme Esquema para un URI: para RabbitMQ, es amqps
Path Vía de acceso para un uri
Authentication Username El nombre de usuario que utiliza para conectarse.
Authentication Password Una contraseña para el usuario; puede mostrarse como $PASSWORD
Authentication Method Cómo se realiza la autenticación; la autenticación "directa" la maneja el controlador.
Hosts 0... Un nombre de host y un puerto a los que conectarse
Composed 0... Un URI que combina los valores de Esquema, Autenticación, Host y Vía de acceso
Certificate Name El nombre asignado para el certificado autofirmado para el despliegue de la base de datos
Certificate Base64 Una versión codificada en base64 del certificado.
  • 0... indica que puede haber una o varias de estas entradas en una matriz.

Muchos controladores de RabbitMQ pueden realizar una conexión con el despliegue si se les proporciona la serie de conexión con formato URI en el campo "Compuesto" de la información de conexión. Por ejemplo:

amqps://$USERNAME:$PASSWORD@f08da56c-f975-4cad-98a5-633b8b5a8e79.974350db55ab4ec0983f023940bf637f.databases.appdomain.cloud:30402

Estos son algunos de los controladores de RabbitMQ comunes:

Conexión con un cliente STOMP

La información que necesita un cliente STOMP para realizar una conexión con el despliegue se encuentra en la sección stomp_ssl de las series de conexión. La tabla siguiente contiene un desglose como referencia.

Tabla 2. RabbitMQ/stomp_ssl
Nombre de campo Índice Descripción
Type Tipo de conexión: para STOMP, es stomp
Authentication Username El nombre de usuario que utiliza para conectarse.
Authentication Password Una contraseña para el usuario; puede mostrarse como $PASSWORD
Authentication Method Cómo se realiza la autenticación; la autenticación "directa" la maneja el cliente.
Hosts 0... Un nombre de host y el puerto habilitado para STOMP al que conectar, así como el nombre de protocolo "stomp-ssl"
Composed 0... Un URI que combina Autenticación, Host y TLS/SSL
ssl El valor TLS/SSL necesario para una conexión. Debería ser siempre true.
Certificate Name El nombre asignado para el certificado autofirmado para el despliegue de la base de datos
Certificate Base64 Una versión codificada en base64 del certificado.
  • 0... indica que puede haber una o varias de estas entradas en una matriz.

Conexión con un cliente MQTT

La información que utiliza un cliente MQTT para conectarse se puede encontrar en la sección mqtts de las series de conexión. La tabla contiene una referencia.

La sección "mqtts" contiene la información que necesita un cliente MQTT para conectarse al despliegue.

Tabla 3. RabbitMQ/mqtts
Nombre de campo Índice Descripción
Type Tipo de conexión: para MQTTS, es uri.
Scheme Esquema para un URI: en este caso es mqtts.
Authentication Username El nombre de usuario que utiliza para conectarse.
Authentication Password Una contraseña para el usuario; puede mostrarse como $PASSWORD
Authentication Method Cómo se realiza la autenticación; la autenticación "directa" la maneja el controlador.
Hosts 0... Un nombre de host y un puerto al que conectar.
Composed 0... Un URI que combina Autenticación, Host y Puerto utilizados para conectar.
Certificate Name El nombre asignado para el certificado autofirmado para el despliegue de la base de datos
Certificate Base64 Una versión codificada en base64 del certificado.
  • 0... indica que puede haber una o varias de estas entradas en una matriz.

Soporte para TLS y certificados autofirmados

Todas las conexiones a Messages for RabbitMQ tienen habilitado TLS 1.2, por lo que el controlador o el cliente que se utiliza para conectar tiene que admitir el cifrado. El despliegue también viene con un certificado autofirmado para que el controlador pueda verificar el servidor al conectarse.

Para obtener más información, consulte Cloud Databases FAQ de certificados.

Utilización del certificado autofirmado

  1. Copie la información del certificado del panel Puntos finales o del campo Base64 de la información de conexión.
  2. Si es necesario, decodifique la serie Base64 en texto.
  3. Guarde el certificado en un archivo. (Puede utilizar el Nombre que se proporciona o un nombre de archivo de su elección).
  4. Proporcione al controlador o al cliente la vía de acceso al certificado.
  5. (opcional) Si el controlador o el cliente lo admite, puede añadir el certificado en su almacén de certificados (o en el del sistema).

Soporte de plugin de CLI para el certificado autofirmado

Puede mostrar el certificado decodificado para el despliegue con el plugin de CLI con el mandato ibmcloud cdb deployment-cacert "your-service-name". Decodifica la serie base64 a texto. Copie y guarde la salida del mandato en un archivo y proporcione la vía de acceso del archivo al controlador o al cliente.