

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Configuración de un bróker RabbitMQ
<a name="rabbitmq-broker-configuration-parameters"></a>

Una configuración contiene todos los ajustes de su agente RabbitMQ en formato Cuttlefish. Puede crear una configuración antes de crear los agente. Luego, puede aplicar la configuración a uno o más agentes.

## Atributos
<a name="configuration-attributes"></a>

La configuración de un agente tiene varios atributos, por ejemplo:
+ Un nombre (MyConfiguration)
+ Un identificador (c-1234a5b6-78cd-901e-2fgh-3i45j6k178l9)
+ Un nombre de recurso de Amazon (ARN) (arn:aws:mq:us-east- 2:123456789012:configuration:c-1234a5b678cd-901e-2fgh-3i45j6k178l9)

Para ver una lista completa de los atributos de configuración, consulte lo siguiente en la Referencia de la API REST de Amazon MQ:
+ [ID de operación de REST: Configuration](https://docs.aws.amazon.com/amazon-mq/latest/api-reference/rest-api-configuration.html)
+ [ID de operación de REST: Configurations](https://docs.aws.amazon.com/amazon-mq/latest/api-reference/rest-api-configurations.html)

Para ver una lista completa de los atributos de revisión de la configuración, consulte lo siguiente:
+ [ID de operación de REST: Configuration Revision](https://docs.aws.amazon.com/amazon-mq/latest/api-reference/rest-api-configuration-revision.html)
+ [ID de operación de REST: Configuration Revisions](https://docs.aws.amazon.com/amazon-mq/latest/api-reference/rest-api-configuration-revisions.html)

Temas
+ [Creación y aplicación de configuraciones de bróker de RabbitMQ](rabbitmq-creating-applying-configurations.md)
+ [Edición de una revisión de la configuración de Amazon MQ para RabbitMQ](edit-current-rabbitmq-configuration-console.md)
+ [Valores configurables para RabbitMQ en Amazon MQ](configurable-values.md)
+ [Soporte de ARN en la configuración de RabbitMQ](arn-support-rabbitmq-configuration.md)

# Creación y aplicación de configuraciones de agente de ActiveMQ
<a name="rabbitmq-creating-applying-configurations"></a>

Una *configuración* contiene todos los ajustes del agente de RabbitMQ en formato Cuttlefish. Puede crear una configuración antes de crear los agente. A continuación, puede aplicar la configuración a uno o más agentes

En el ejemplo siguiente, se muestra cómo crear y aplicar la configuración de un agente de RabbitMQ mediante la Consola de administración de AWS.

**importante**  
Solo puede **eliminar** una configuración mediante la API `DeleteConfiguration`. Para obtener más información, consulte [Configuraciones](https://docs.aws.amazon.com/amazon-mq/latest/api-reference/configurations-configuration-id.html) en la *Referencia de la API de Amazon MQ*.

## Crear una nueva configuración
<a name="creating-rabbitmq-configuration-from-scratch-console"></a>

 Para aplicar una configuración a su agente, primero debe crear dicha configuración. 

1. Inicie sesión en la [consola de Amazon MQ](https://console.aws.amazon.com/amazon-mq/).

1. En el lado izquierdo, expanda el panel de navegación y elija **Configurations (Configuraciones)**.  
![\[Amazon MQ navigation panel showing Brokers and Configurations options.\]](http://docs.aws.amazon.com/es_es/amazon-mq/latest/developer-guide/images/amazon-mq-tutorials-create-configuration.png)

1. En la página **Configurations (Configuraciones)**, seleccione **Create configuration (Crear configuración)**.

1. En la página **Create configuration** (Crear configuración), en la sección **Details** (Detalles), escriba el nombre de la configuración en **Configuration name** (Nombre de configuración) (por ejemplo, `MyConfiguration`) y seleccione una versión del motor del agente en **Broker engine** (Motor del agente).

   Para obtener más información acerca de las versiones de motor de RabbitMQ compatibles con Amazon MQ para RabbitMQ, consulte [Administración de versiones del motor de Amazon MQ para RabbitMQ](rabbitmq-version-management.md).

1. Seleccione **Crear configuración**.

## Crear una revisión de configuración nueva
<a name="creating-new-rabbitmq-configuration-revision-console"></a>

 Tras crear una configuración, tendrá que editarla mediante una revisión de la configuración. 

1. En la lista de configuraciones, elija. ***MyConfiguration***
**nota**  
La primera revisión de la configuración siempre se genera automáticamente cuando Amazon MQ crea la configuración.

   En la ***MyConfiguration***página, se muestran el tipo y la versión del motor de broker que utiliza la nueva revisión de configuración (por ejemplo, **RabbitMQ 3.xx.xx**).

1. En la pestaña **Detalles de configuración**, se muestra el número de revisión de la configuración, la descripción y la configuración del agente en formato Cuttlefish.
**nota**  
Cuando se edita la configuración actual, se crea una nueva revisión de configuración.

1. Elija **Editar configuración** y realice cambios en la configuración de Cuttlefish.

1. Seleccione **Save**.

   Se muestra el cuadro de diálogo **Save revision** (Guardar revisión).

1. (Opcional) Escriba `A description of the changes in this revision`.

1. Seleccione **Save**.

   De este modo, guardará la nueva revisión de la configuración.
**importante**  
Si realiza cambios en una configuración, los cambios *no* se aplican al agente de inmediato. Para aplicar los cambios, debe espere al próximo período de mantenimiento o [reiniciar el agente](amazon-mq-rebooting-broker.md).  
En la actualidad, no se puede eliminar una configuración.

## Aplicar una revisión de configuración al agente
<a name="apply-rabbitmq-configuration-revision-creating-console"></a>

 Tras crear la revisión de la configuración, puede aplicarla a su agente. 

1. En el lado izquierdo, expanda el panel de navegación y elija **Brokers (Agentes)**.  
![\[Amazon MQ navigation panel showing Brokers and Configurations options.\]](http://docs.aws.amazon.com/es_es/amazon-mq/latest/developer-guide/images/amazon-mq-tutorials-apply-configuration.png)

1. **En la lista de corredores, seleccione su corredor (por ejemplo) y, a continuación, **MyBroker**elija Editar.**

1. En la *MyBroker* página de **edición**, en la sección **Configuración**, seleccione una **configuración** y una **revisión** y, a continuación, elija **Programar modificaciones**.

1. En la sección **Schedule broker modifications (Programar modificaciones del agente)**, elija **During the next scheduled maintenance window (Durante el siguiente periodo de mantenimiento programado)** si desea aplicar las modificaciones durante el siguiente periodo de mantenimiento programado o **Immediately (Inmediatamente)** si desea aplicarlas inmediatamente.
**importante**  
Los agentes de instancia única están desconectados mientras se reinician. En el caso de los agentes de clústeres, solo un nodo está inactivo a la vez mientras el agente se reinicia.

1. Seleccione **Aplicar**.

   La revisión de la configuración se aplicará al broker en el momento especificado.

# Edición de una revisión de configuración de Amazon MQ para RabbitMQ
<a name="edit-current-rabbitmq-configuration-console"></a>

 En las siguientes instrucciones se describe cómo editar una revisión de configuración para su agente. 

1. Inicie sesión en la [consola de Amazon MQ](https://console.aws.amazon.com/amazon-mq/).

1. En la lista de corredores, seleccione su corredor (por ejemplo **MyBroker**) y, a continuación, elija **Editar**.

1. En la ***MyBroker***página, elija **Editar**.

1. En la *MyBroker* página de **edición**, en la sección **Configuración**, seleccione una **configuración** y una **revisión** y, a continuación, elija **Editar**.
**nota**  
A menos que seleccione una configuración cuando crea un agente, la primera revisión de la configuración siempre se crea automáticamente cuando Amazon MQ crea el agente.

   En la ***MyBroker***página, se muestran el tipo y la versión del motor del broker que utiliza la configuración (por ejemplo, **RabbitMQ 3.xx.xx**).

1. En la pestaña **Detalles de configuración**, se muestra el número de revisión de la configuración, la descripción y la configuración del agente en formato Cuttlefish.
**nota**  
Cuando se edita la configuración actual, se crea una nueva revisión de configuración.

1. Elija **Editar configuración** y realice cambios en la configuración de Cuttlefish.

1. Seleccione **Save**.

   Se muestra el cuadro de diálogo **Save revision** (Guardar revisión).

1. (Opcional) Escriba `A description of the changes in this revision`.

1. Seleccione **Save**.

   De este modo, guardará la nueva revisión de la configuración.
**importante**  
Si realiza cambios en una configuración, los cambios *no* se aplican al agente de inmediato. Para aplicar los cambios, debe espere al próximo período de mantenimiento o [reiniciar el agente](amazon-mq-rebooting-broker.md).  
En la actualidad, no se puede eliminar una configuración.

# Valores configurables
<a name="configurable-values"></a>

Puede establecer el valor de las siguientes opciones de configuración del agente modificando su archivo de configuración en la Consola de administración de AWS.

Además de los valores descritos en la tabla siguiente, Amazon MQ admite opciones de configuración de bróker adicionales relacionadas con la autenticación y la autorización, así como con los límites de recursos. Para obtener más información sobre estas opciones de configuración, consulte
+ [OAuth Configuración 2.0](configure-oauth2.md)
+ [Configuración LDAP](configure-ldap.md)
+ [Configuración HTTP](configure-http.md)
+ [Configuración de SSL](configure-ssl.md)
+ [Configuración mTLS](configure-mtls.md)
+ [Soporte de ARN](arn-support-rabbitmq-configuration.md)
+ [Límites de recursos](rabbitmq-resource-limits-configuration.md)
+ [Configuración SSL del cliente AMQP](rabbitmq-amqp-client-ssl-configuration.md)


| Configuración | Valor predeterminado | Valores recomendados | Valores | Versiones aplicables | Description (Descripción) | 
| --- | --- | --- | --- | --- | --- | 
| consumer\$1timeout | 1 800 000 ms (30 minutos) | 1 800 000 ms (30 minutos) | De 0 a 2.147.483.647 ms. Amazon MQ también admite el valor 0, que significa «infinito». | Todas las versiones | Un tiempo de espera en el acuse de recibo de entrega al consumidor para detectar cuándo los consumidores no confirman las entregas. | 
| latido | 60 segundos | 60 segundos | 60 a 3600 segundos | Todas las versiones | Define el tiempo que debe transcurrir hasta que RabbitMQ considere que una conexión no está disponible. | 
| management.restrictions.operator\$1policy\$1changes.disabled | true | true | true, false | Todas las versiones | Desactiva la realización de cambios en las políticas del operador. Si realiza este cambio, le recomendamos encarecidamente que incluya las propiedades de HA en las políticas de operador propias. | 
| quorum\$1queue.property\$1equivalence.relaxed\$1checks\$1on\$1redeclaration | true | true | true, false | Todas las versiones | Si se establece en TRUE, la aplicación evita una excepción de canal al volver a declarar una cola de cuórum. | 
| secure.management.http.headers.enabled | true | true | true, false | Todas las versiones | Activa los encabezados de seguridad HTTP no modificables. | 

## Configuración de acuse de recibo de entrega a los consumidores
<a name="configuring-consumer-delivery"></a>

Puedes configurar consumer\$1timeout para que detecte cuándo los consumidores no embalan las entregas. Si el consumidor no envía un acuse de recibo dentro del tiempo de espera, el canal se cerrará. Por ejemplo, si utiliza el valor predeterminado de 1 800 000 milisegundos, si el consumidor no envía un acuse de recibo de entrega en ese plazo, el canal se cerrará. Amazon MQ también admite el valor 0, que significa «infinito».

## Configuración de latidos
<a name="configuring-heartbeat"></a>

Es posible configurar un tiempo de espera de latido para saber si las conexiones se han interrumpido o si han fallado. El valor de latido define el límite de tiempo antes de que se considere que una conexión está inactiva.

## Configuración de políticas del operador
<a name="configuring-operator-policies"></a>

La política de operador predeterminada de cada host virtual tiene las siguientes propiedades de HA recomendadas:

```
{
"name": "default_operator_policy_AWS_managed",
"pattern": ".*",
"apply-to": "all",
"priority": 0,
"definition": {
"ha-mode": "all",
"ha-sync-mode": "automatic"
}
}
```

Los cambios en las políticas del operador a través de la API Consola de administración de AWS o de administración no están disponibles de forma predeterminada. Puede habilitar los cambios agregando la siguiente línea a la configuración del agente:

```
management.restrictions.operator_policy_changes.disabled=false
```

Si realiza este cambio, le recomendamos encarecidamente que incluya las propiedades de HA en las políticas de operador propias.

## Configuración de comprobaciones relajadas en la declaración de colas
<a name="configuring-relaxed-checks"></a>

Si ha migrado sus colas clásicas a colas de quórum pero no ha actualizado su código de cliente, puede evitar una excepción de canal al volver a declarar una cola de quórum configurando quorum\$1queue.property\$1equivalence.relaxed\$1checks\$1on\$1redeclaration con el valor true.

## Configuración de encabezados de seguridad HTTP
<a name="configuring-http-security"></a>

La configuración secure.management.http.headers.enabled habilita los siguientes encabezados de seguridad HTTP:
+ [X-Content-Type-Options: nosniff:](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) impide que los navegadores rastreen el contenido y que se utilicen algoritmos para deducir el formato de archivo de los sitios web.
+ [X-Frame-Options: DENY:](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) impide que otros usuarios incrusten el complemento de administración en un marco de su propio sitio web para engañar a otros.
+ [Strict-Transport-Security: max-age=47304000; includeSubDomains:](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) obliga a los navegadores a utilizar HTTPS al realizar conexiones posteriores al sitio web y sus subdominios durante un período prolongado (1,5 años).

Los corredores de Amazon MQ para RabbitMQ creados en las versiones 3.10 y posteriores tendrán secure.management.http.headers.enabled establecido en true de forma predeterminada. Puede activar estos encabezados de seguridad HTTP configurando secure.management.http.headers.enabled en true. Si deseas excluirte de estos encabezados de seguridad HTTP, establece secure.management.http.headers.enabled en false.

# Configuración de la autenticación y la autorización 2.0 OAuth
<a name="configure-oauth2"></a>

Para obtener información sobre las opciones de configuración OAuth 2.0 y cómo configurar la autenticación OAuth 2.0 para sus corredores, consulte [Configuraciones OAuth 2.0 compatibles](oauth-for-amq-for-rabbitmq.md#oauth-tutorial-supported-configs) y [Uso de la autenticación y autorización OAuth 2.0](oauth-tutorial.md).

# Configuración de la autenticación y la autorización de LDAP
<a name="configure-ldap"></a>

[Para obtener información sobre las opciones de configuración de LDAP y la configuración de la autenticación LDAP para sus intermediarios, consulte Configuraciones de LDAP compatibles y.](ldap-for-amq-for-rabbitmq.md#ldap-supported-configs) [Uso de la autenticación y la autorización de LDAP](rabbitmq-ldap-tutorial.md)

# Configuración de la autenticación y autorización HTTP
<a name="configure-http"></a>

Para obtener información sobre los valores de configuración de la autenticación HTTP y cómo configurar la autenticación HTTP para sus agentes, consulte [Autenticación y autorización HTTP](http-for-amq-for-rabbitmq.md) y. [Uso de la autenticación y la autorización HTTP](rabbitmq-http-tutorial.md)

**nota**  
El complemento de autenticación HTTP solo está disponible para Amazon MQ para RabbitMQ versión 4 y versiones posteriores.

# Configuración de la autenticación con certificado SSL
<a name="configure-ssl"></a>

Para obtener información sobre los valores de configuración de la autenticación con certificados SSL y cómo configurar la autenticación con certificados SSL para sus corredores, consulte Autenticación con certificados [SSL](ssl-for-amq-for-rabbitmq.md) y. [Uso de la autenticación con certificado SSL](rabbitmq-ssl-tutorial.md)

**nota**  
El complemento de autenticación con certificado SSL solo está disponible para Amazon MQ para RabbitMQ versión 4 y versiones posteriores.

# Configuración de mTLS
<a name="configure-mtls"></a>

Amazon MQ para RabbitMQ admite el TLS mutuo (mTLS) para conexiones seguras a varios puntos de enlace y servicios externos. El mTLS proporciona una seguridad mejorada al requerir que tanto el cliente como el servidor se autentiquen mediante certificados.

**nota**  
El uso de autoridades de certificación privadas para los mTL solo está disponible para Amazon MQ para RabbitMQ versión 4 y versiones posteriores.

**importante**  
Amazon MQ para RabbitMQ impone el uso de archivos de AWS ARNs certificados y claves privadas. Consulte la [compatibilidad con ARN en la configuración de RabbitMQ](arn-support-rabbitmq-configuration.md) para obtener más detalles.

**Topics**
+ [Punto final AMQP](#mtls-amqp-endpoint)
+ [Complemento de administración RabbitMQ](#mtls-management-plugin)
+ [Complemento RabbitMQ 2.0 OAuth](#mtls-oauth2-plugin)
+ [Complemento de autenticación HTTP RabbitMQ](#mtls-http-plugin)
+ [Complemento LDAP RabbitMQ](#mtls-ldap-plugin)
+ [Conexiones de cliente AMQP](#mtls-amqp-client)

## Punto final AMQP
<a name="mtls-amqp-endpoint"></a>

Configure los mTLS para las conexiones de los clientes al punto final AMQP. Esto se usa con la autenticación con certificado SSL. Para ver las configuraciones compatibles, consulte[Autenticación con certificado SSL](ssl-for-amq-for-rabbitmq.md).

## Complemento de administración RabbitMQ
<a name="mtls-management-plugin"></a>

Configure los mTLS para las conexiones a la interfaz de administración de RabbitMQ.

**nota**  
La API de administración no admite mTLS estrictos.

`aws.arns.management.ssl.cacertfile`  
Archivo de autoridad de certificación para validar los certificados de los clientes que se conectan a la interfaz de administración.

`management.ssl.verify`  
Modo de verificación por pares. Valores admitidos:`verify_none`, `verify_peer`

`management.ssl.depth`  
Profundidad máxima de la cadena de certificados para la verificación.

`management.ssl.hostname_verification`  
Modo de verificación del nombre de host. Valores admitidos:`wildcard`, `none`

No se admiten los siguientes valores de configuración de SSL:

### Ver lista completa
<a name="management-ssl-options-list-content"></a>
+ `management.ssl.cert`
+ `management.ssl.client_renegotiation`
+ `management.ssl.dh`
+ `management.ssl.dhfile`
+ `management.ssl.fail_if_no_peer_cert`
+ `management.ssl.honor_cipher_order`
+ `management.ssl.honor_ecc_order`
+ `management.ssl.key.RSAPrivateKey`
+ `management.ssl.key.DSAPrivateKey`
+ `management.ssl.key.PrivateKeyInfo`
+ `management.ssl.log_alert`
+ `management.ssl.password`
+ `management.ssl.psk_identity`
+ `management.ssl.reuse_sessions`
+ `management.ssl.secure_renegotiate`
+ `management.ssl.versions.$version`
+ `management.ssl.sni`

## Complemento RabbitMQ 2.0 OAuth
<a name="mtls-oauth2-plugin"></a>

Configure los mTLS para las conexiones de Amazon MQ al proveedor OAuth de identidades 2.0. Para ver las configuraciones compatibles, consulte. [OAuth Autenticación y autorización 2.0](oauth-for-amq-for-rabbitmq.md)

## Complemento de autenticación HTTP RabbitMQ
<a name="mtls-http-plugin"></a>

Configure los mTLS para las conexiones desde Amazon MQ al servidor de autenticación HTTP. Para ver las configuraciones compatibles, consulte. [Autenticación y autorización HTTP](http-for-amq-for-rabbitmq.md)

## Complemento LDAP RabbitMQ
<a name="mtls-ldap-plugin"></a>

Configure los mTLS para las conexiones desde Amazon MQ al servidor LDAP. Para ver las configuraciones compatibles, consulte. [Autenticación y autorización LDAP](ldap-for-amq-for-rabbitmq.md)

## Conexiones de cliente AMQP
<a name="mtls-amqp-client"></a>

Configure la verificación por pares de TLS para las conexiones de clientes AMQP utilizadas por federation y shovel. Para obtener más información, consulte Configuración SSL del cliente [AMQP](rabbitmq-amqp-client-ssl-configuration.md).

**importante**  
Amazon MQ no admite actualmente la configuración de certificados de cliente para las conexiones de clientes AMQP. Como resultado, Federation y Shovel no pueden conectarse a intermediarios compatibles con MTLS que requieren la autenticación con certificados de cliente.

# Configuración de límite de recursos
<a name="configure-resource-limits"></a>

Amazon MQ para RabbitMQ admite la configuración de los límites de recursos de los corredores a partir de RabbitMQ 4. Al crear un intermediario, Amazon MQ aplica automáticamente los valores predeterminados a estos límites de recursos. Estos valores predeterminados actúan como barreras para proteger la disponibilidad de su agente y, al mismo tiempo, adaptarse a los patrones de uso habituales de los clientes. Puede personalizar el comportamiento de su corredor cambiando los valores límite de configuración para que se adapten mejor a sus requisitos específicos de carga de trabajo. Para obtener más información sobre los valores predeterminados y máximos permitidos, consulte[Directrices de dimensionamiento de Amazon MQ para RabbitMQ](rabbitmq-sizing-guidelines.md).

## Nombres de recursos y claves de configuración
<a name="resource-limit-configuration-keys"></a>


| Nombre del recurso | Clave de configuración | 
| --- | --- | 
| Connection | connection\$1max | 
| Canal | channel\$1max\$1per\$1node | 
| Cola | cluster\$1queue\$1limit | 
| Vhost | vhost\$1max | 
| Pala | runtime\$1parameters.limits.shovel | 
| Exchange | cluster\$1exchange\$1limit | 
| Consumidor por canal | consumer\$1max\$1per\$1channel | 
| Tamaño máximo de mensaje | max\$1message\$1size | 

## ¿Cómo anular los límites de recursos
<a name="override-resource-limits"></a>

Puede anular los límites de recursos mediante la API de Amazon MQ y la consola Amazon MQ.

El siguiente ejemplo muestra cómo anular el límite predeterminado del recuento de colas mediante: AWS CLI

```
aws mq update-configuration --configuration-id <config-id> --data "$(echo "cluster_queue_limit=500" | base64 --wrap=0)"
```

Una invocación correcta crea una revisión de la configuración. Debe asociar la configuración a su corredor RabbitMQ y reiniciar el corredor para aplicar la anulación. Para obtener más información, consulte [RabbitMQ Broker Configurations](rabbitmq-broker-configuration-parameters.md) 

## Errores de anulación del límite de recursos
<a name="resource-limit-override-errors"></a>

Al asociar o crear un corredor con valores de configuración fuera del rango admitido, se produce una respuesta de error similar a la siguiente:

```
Configuration Revision N for configuration:cluster_queue_limit has limit: of value: 100000000 larger than maximum allowed limit:5000
```

# Soporte de ARN en la configuración de RabbitMQ
<a name="arn-support-rabbitmq-configuration"></a>

Amazon MQ para RabbitMQ admite AWS ARNs los valores de algunos ajustes de configuración de RabbitMQ. [Esto lo habilita el complemento comunitario rabbitmq-aws de RabbitMQ.](https://github.com/amazon-mq/rabbitmq-aws) Amazon MQ ha desarrollado y mantenido este complemento y también se puede utilizar en corredores de RabbitMQ autohospedados que no estén gestionados por Amazon MQ.

**Consideraciones importantes**  
Los valores de ARN resueltos recuperados por el complemento aws se pasan directamente al proceso RabbitMQ en tiempo de ejecución. No se almacenan en ningún otro lugar del nodo RabbitMQ.
Amazon MQ para RabbitMQ requiere una función de IAM que Amazon MQ pueda asumir para acceder a la configuración. ARNs Esto se configura mediante un ajuste. `aws.arns.assume_role_arn`
Los usuarios que CreateBroker utilicen o UpdateBroker APIs tengan una configuración de intermediario que incluya una función de IAM deben tener el `iam:PassRole` permiso para esa función.
El rol de IAM debe existir en la misma AWS cuenta que el bróker de RabbitMQ. Todos los ARNs elementos de la configuración deben estar presentes en la misma AWS región que el bróker RabbitMQ.
Amazon MQ añade claves condicionales globales de IAM `aws:SourceAccount` y `aws:SourceArn` cuando asume la función de IAM. [Estos valores deben utilizarse en la política de IAM asociada a la función de protección de diputado confusa.](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)

**Topics**
+ [Claves compatibles](#arn-support-supported-keys)
+ [Ejemplos de políticas de IAM](#arn-support-iam-policy-samples)
+ [Validación de acceso](#arn-support-validation)
+ [Estados de cuarentena relacionados con los corredores](#arn-support-quarantine-states)
+ [Escenario de ejemplo](#arn-support-example-scenario)

## Claves compatibles
<a name="arn-support-supported-keys"></a>

`aws.arns.assume_role_arn`  
Rol de IAM (ARN) que Amazon MQ asume para acceder a otros recursos. AWS Se requiere cuando se utiliza cualquier otra configuración de ARN.

### Punto final AMQP
<a name="arn-support-amqp-endpoint"></a>


| Clave de configuración | Description (Descripción) | 
| --- | --- | 
| aws.arns.ssl\$1options.cacertfile | Archivo de autoridad de certificación para las conexiones de los SSL/TLS clientes. Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 

### Complemento de administración RabbitMQ
<a name="arn-support-management-plugin"></a>


| Clave de configuración | Description (Descripción) | 
| --- | --- | 
| aws.arns.management.ssl.cacertfile | Archivo de autoridad de certificación para las conexiones de la interfaz de administración. SSL/TLS Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 

### Complemento RabbitMQ 2.0 OAuth
<a name="arn-support-oauth2-plugin"></a>


| Clave de configuración | Description (Descripción) | 
| --- | --- | 
| aws.arns.auth\$1oauth2.https.cacertfile | Archivo de autoridad de certificación para conexiones HTTPS OAuth 2.0. Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 

### Complemento de autenticación HTTP RabbitMQ
<a name="arn-support-http-plugin"></a>


| Clave de configuración | Description (Descripción) | 
| --- | --- | 
| aws.arns.auth\$1http.ssl\$1options.cacertfile | Archivo de autoridad de certificación para conexiones de autenticación HTTP. SSL/TLS Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 
| aws.arns.auth\$1http.ssl\$1options.certfile | Archivo de certificado para conexiones TLS mutuas entre Amazon MQ y el servidor de autenticación HTTP. Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 
| aws.arns.auth\$1http.ssl\$1options.keyfile | Archivo de clave privada para conexiones TLS mutuas entre Amazon MQ y el servidor de autenticación HTTP. Amazon MQ requiere usarlo AWS Secrets Manager para almacenar la clave privada. | 

### Complemento LDAP RabbitMQ
<a name="arn-support-ldap-plugin"></a>


| Clave de configuración | Description (Descripción) | 
| --- | --- | 
| aws.arns.auth\$1ldap.ssl\$1options.cacertfile | Archivo de autoridad de certificación para conexiones LDAP. SSL/TLS Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 
| aws.arns.auth\$1ldap.ssl\$1options.certfile | Archivo de certificado para conexiones TLS mutuas entre Amazon MQ y el servidor LDAP. Amazon MQ requiere usar Amazon S3 o almacenar el certificado. | 
| aws.arns.auth\$1ldap.ssl\$1options.keyfile | Archivo de clave privada para conexiones TLS mutuas entre Amazon MQ y el servidor LDAP. Amazon MQ requiere usarlo AWS Secrets Manager para almacenar la clave privada. | 
| aws.arns.auth\$1ldap.dn\$1lookup\$1bind.password | Contraseña para el enlace de búsqueda de DN de LDAP. Amazon MQ requiere almacenar la contraseña como un valor de texto sin formato. AWS Secrets Manager  | 
| aws.arns.auth\$1ldap.other\$1bind.password | Contraseña para otro enlace de LDAP. Amazon MQ requiere almacenar la contraseña como un valor de texto sin formato. AWS Secrets Manager  | 

## Ejemplos de políticas de IAM
<a name="arn-support-iam-policy-samples"></a>

Para ver ejemplos de políticas de IAM, incluidos documentos de políticas de asunción de roles y documentos de políticas de roles, consulte el ejemplo de implementación del [CDK](https://github.com/aws-samples/amazon-mq-samples/blob/main/rabbitmq-samples/rabbitmq-ldap-activedirectory-sample/lib/rabbitmq-activedirectory-stack.ts#L232).

Consulte [Uso de la autenticación y la autorización de LDAP](rabbitmq-ldap-tutorial.md) los pasos sobre cómo configurar AWS Secrets Manager y los recursos de Amazon S3.

## Validación de acceso
<a name="arn-support-validation"></a>

Para solucionar problemas en los que no se pueden recuperar los valores del ARN, el complemento aws admite [un punto final de la API de administración de RabbitMQ](https://github.com/amazon-mq/rabbitmq-aws/blob/main/API.md) al que se puede llamar para comprobar si Amazon MQ es capaz de asumir la función y resolverla correctamente. AWS ARNs Esto evita la necesidad de actualizar la configuración del broker, actualizar el broker con la nueva revisión de la configuración y reiniciar el broker para probar los cambios de configuración.

**nota**  
El uso de esta API requiere un usuario administrador de RabbitMQ existente. Amazon MQ recomienda crear corredores de prueba con un usuario interno además de otros métodos de acceso. Consulte [Habilitar la autenticación OAuth 2.0 y la autenticación simple (interna)](oauth-tutorial.md#oauth-tutorial-config-both-auth-methods-using-cli). A continuación, se puede utilizar este usuario para acceder a la API de validación.

**nota**  
Aunque el complemento aws admite la transferencia de un nuevo rol como entrada a la API de validación, Amazon MQ no admite este parámetro. El rol de IAM utilizado para la validación debe coincidir con el valor de la configuración del `aws.arns.assume_role_arn` bróker.

## Estados de cuarentena relacionados con los corredores
<a name="arn-support-quarantine-states"></a>

Para obtener información sobre los estados de cuarentena de los corredores relacionados con problemas de soporte de ARN, consulte:
+ [RABBITMQ\$1INVALID\$1ASSUMEROLE](troubleshooting-action-required-codes-invalid-assumerole.md)
+ [RABBITMQ\$1INVALID\$1ARN\$1LDAP](troubleshooting-action-required-codes-invalid-arn-ldap.md)
+ [RABBITMQ\$1INVALID\$1ARN](troubleshooting-action-required-codes-invalid-arn.md)

## Escenario de ejemplo
<a name="arn-support-example-scenario"></a>
+ El corredor se `b-f0fc695e-2f9c-486b-845a-988023a3e55b` ha configurado para usar la función de IAM para acceder al secreto `<role>` AWS Secrets Manager `<arn>`
+ Si la función proporcionada a Amazon MQ no tiene permiso de lectura sobre el AWS Secrets Manager secreto, aparecerá el siguiente error en los registros de RabbitMQ:

  ```
  [error] <0.254.0> aws_arn_config: {handle_assume_role,{error,{assume_role_failed,"AWS service is unavailable"}}}
  ```

  Además, el agente entrará en estado de cuarentena. `INVALID_ASSUMEROLE` Para obtener más información, consulte [INVALID\$1ASSUMEROLE](troubleshooting-action-required-codes-invalid-assumerole.md).
+ Los intentos de autenticación LDAP fallarán y generarán el siguiente error:

  ```
  [error] <0.254.0> LDAP bind failed: invalid_credentials
  ```
+ Corrija la función de IAM con los permisos adecuados
+ Llama al punto final de validación para comprobar si RabbitMQ ahora puede acceder al secreto:

  ```
  curl -4su 'guest:guest' -XPUT -H 'content-type: application/json' <broker-endpoint>/api/aws/arn/validate -d '{"assume_role_arn":"arn:aws:iam::<account-id>:role/<role-name>","arns":["arn:aws:secretsmanager:<region>:<account-id>:secret:<secret-name>"]}' | jq '.'
  ```

# Configuración SSL del cliente AMQP
<a name="rabbitmq-amqp-client-ssl-configuration"></a>

 Federation y Shovel utilizan AMQP para la comunicación entre intermediarios ascendentes y descendentes. De forma predeterminada, la *verificación por pares de TLS* está habilitada para los clientes AMQP en Amazon MQ for RabbitMQ 4. Con esta configuración, los clientes AMQP federados y simples que utilicen corredores de Amazon MQ realizarán una verificación por pares al establecer conexiones con un corredor principal. 

 Los clientes de AMQP que se ejecutan en los corredores de Amazon MQ admiten las mismas autoridades de certificación que Mozilla. Si no utilizas [ACM](https://www.amazontrust.com/repository), utiliza un certificado emitido por una CA de la lista de certificados de CA [incluidos en Mozilla.](https://wiki.mozilla.org/CA/Included_Certificates) Si su agente local utiliza certificados de otras autoridades de certificación, la verificación de SSL fallará. Puede deshabilitar la *verificación por pares de TLS* para estos casos de uso. 

**importante**  
Amazon MQ no admite actualmente la configuración de certificados de cliente para las conexiones de clientes AMQP. Como resultado, Federation y Shovel no pueden conectarse a intermediarios compatibles con MTLS que requieren la autenticación con certificados de cliente.

**importante**  
 *En Amazon MQ para RabbitMQ 3, las propiedades SSL de los clientes AMQP se configuran con los valores predeterminados de RabbitMQ (verify\$1none).* Amazon MQ para RabbitMQ 3 no admite la anulación de estos valores predeterminados. 

**nota**  
Con la `verify_peer` configuración predeterminada, puede establecer conexiones de federación y de control entre dos corredores de Amazon MQ, pero esto no permite establecer la conexión entre el corredor de Amazon MQ y los corredores privados o los corredores locales que utilizan certificados de CA que no son de Amazon MQ. Para conectarte con agentes privados o locales, debes deshabilitar la verificación por pares en el agente intermediario de Amazon MQ.

## Clave de configuración SSL del cliente AMQP
<a name="amqp-client-ssl-configuration-keys"></a>


| Configuración | Clave de configuración | Valores admitidos | 
| --- | --- | --- | 
| Verificación por pares SSL del cliente AMQP | amqp\$1client.ssl\$1options.verify | verify\$1none, verify\$1peer | 

## ¿Cómo anular la verificación por pares SSL del cliente AMQP
<a name="override-amqp-client-ssl-peer-verification"></a>

Puedes anular la verificación por pares SSL del cliente AMQP mediante la API de Amazon MQ y la consola Amazon MQ en los corredores de RabbitMQ 4.

El siguiente ejemplo muestra cómo anular la verificación por pares SSL del cliente AMQP mediante: AWS CLI

```
aws mq update-configuration --configuration-id <config-id> --data "$(echo "amqp_client.ssl_options.verify=verify_none" | base64 --wrap=0)"
```

Una invocación correcta crea una revisión de la configuración. Debe asociar la configuración a su corredor RabbitMQ y reiniciar el corredor para aplicar la anulación. Para obtener más información, consulte [Creating and applying broker configurations](rabbitmq-creating-applying-configurations.md) 

**importante**  
Cuando se usa`verify_none`, el cifrado SSL sigue activo, pero no se verifica la identidad del par. Use esta configuración solo cuando sea necesario y asegúrese de confiar en la ruta de red al agente de destino.