

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Supporto ARN nella configurazione di RabbitMQ
<a name="arn-support-rabbitmq-configuration"></a>

Amazon MQ for RabbitMQ supporta i AWS ARNs valori di alcune impostazioni di configurazione di RabbitMQ. [Ciò è reso possibile dal plugin della community RabbitMQ rabbitmq-aws.](https://github.com/amazon-mq/rabbitmq-aws) Questo plug-in è sviluppato e gestito da Amazon MQ e può essere utilizzato anche in broker RabbitMQ con hosting autonomo non gestiti da Amazon MQ.

**Considerazioni importanti**  
I valori ARN risolti recuperati dal plugin aws vengono passati direttamente al processo RabbitMQ in fase di esecuzione. Non sono memorizzati altrove nel nodo RabbitMQ.
Amazon MQ for RabbitMQ richiede un ruolo IAM che può essere assunto da Amazon MQ per accedere alla configurazione. ARNs Questo viene configurato tramite impostazione. `aws.arns.assume_role_arn`
Gli utenti che chiamano CreateBroker o UpdateBroker APIs con una configurazione di broker che include un ruolo IAM devono disporre dell'`iam:PassRole`autorizzazione per quel ruolo.
Il ruolo IAM deve esistere nello stesso AWS account del broker RabbitMQ. Tutto ARNs nella configurazione deve essere presente nella stessa AWS regione del broker RabbitMQ.
Amazon MQ aggiunge chiavi condizionali globali IAM `aws:SourceAccount` e `aws:SourceArn` quando assume il ruolo IAM. Questi valori devono essere utilizzati nella policy IAM associata al ruolo in caso di [confusa protezione sostitutiva.](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)

**Topics**
+ [Chiavi supportate](#arn-support-supported-keys)
+ [Esempi di policy IAM](#arn-support-iam-policy-samples)
+ [Convalida dell'accesso](#arn-support-validation)
+ [Stati di quarantena dei broker correlati](#arn-support-quarantine-states)
+ [Scenario di esempio](#arn-support-example-scenario)

## Chiavi supportate
<a name="arn-support-supported-keys"></a>

`aws.arns.assume_role_arn`  
ARN del ruolo IAM che Amazon MQ assume per accedere ad altre risorse. AWS Richiesto quando viene utilizzata qualsiasi altra configurazione ARN.

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


| Chiave di configurazione | Description | 
| --- | --- | 
| aws.arns.ssl\$1options.cacertfile | File di autorità di certificazione per SSL/TLS le connessioni client. Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 

### Plugin di gestione RabbitMQ
<a name="arn-support-management-plugin"></a>


| Chiave di configurazione | Description | 
| --- | --- | 
| aws.arns.management.ssl.cacertfile | File di autorità di certificazione per le connessioni all'interfaccia SSL/TLS di gestione. Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 

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


| Chiave di configurazione | Description | 
| --- | --- | 
| aws.arns.auth\$1oauth2.https.cacertfile | File di autorità di certificazione per connessioni HTTPS OAuth 2.0. Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 

### Plugin di autenticazione HTTP RabbitMQ
<a name="arn-support-http-plugin"></a>


| Chiave di configurazione | Description | 
| --- | --- | 
| aws.arns.auth\$1http.ssl\$1options.cacertfile | File di autorità di certificazione per le connessioni di autenticazione SSL/TLS HTTP. Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 
| aws.arns.auth\$1http.ssl\$1options.certfile | File di certificato per connessioni TLS reciproche tra Amazon MQ e il server di autenticazione HTTP. Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 
| aws.arns.auth\$1http.ssl\$1options.keyfile | File di chiave privata per connessioni TLS reciproche tra Amazon MQ e il server di autenticazione HTTP. Amazon MQ richiede l'utilizzo Gestione dei segreti AWS per archiviare la chiave privata. | 

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


| Chiave di configurazione | Description | 
| --- | --- | 
| aws.arns.auth\$1ldap.ssl\$1options.cacertfile | File di autorità di certificazione per le connessioni LDAP. SSL/TLS Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 
| aws.arns.auth\$1ldap.ssl\$1options.certfile | File di certificato per connessioni TLS reciproche tra Amazon MQ e il server LDAP. Amazon MQ richiede l'utilizzo di Amazon S3 o l'archiviazione del certificato. | 
| aws.arns.auth\$1ldap.ssl\$1options.keyfile | File di chiave privata per connessioni TLS reciproche tra Amazon MQ e il server LDAP. Amazon MQ richiede l'utilizzo Gestione dei segreti AWS per archiviare la chiave privata. | 
| aws.arns.auth\$1ldap.dn\$1lookup\$1bind.password | Password per l'associazione di ricerca DN LDAP. Amazon MQ richiede l'utilizzo Gestione dei segreti AWS di memorizzare la password come valore di testo non crittografato. | 
| aws.arns.auth\$1ldap.other\$1bind.password | Password per LDAP (altro collegamento). Amazon MQ richiede l'utilizzo Gestione dei segreti AWS di memorizzare la password come valore di testo non crittografato. | 

## Esempi di policy IAM
<a name="arn-support-iam-policy-samples"></a>

Per esempi di policy IAM, tra cui i documenti relativi alle policy relative all'assunzione di ruoli e i documenti relativi alle policy relative ai ruoli, consulta l'[esempio di implementazione CDK](https://github.com/aws-samples/amazon-mq-samples/blob/main/rabbitmq-samples/rabbitmq-ldap-activedirectory-sample/lib/rabbitmq-activedirectory-stack.ts#L232).

Consulta [Utilizzo dell'autenticazione e dell'autorizzazione LDAP](rabbitmq-ldap-tutorial.md) la procedura per la configurazione Gestione dei segreti AWS e le risorse di Amazon S3.

## Convalida dell'accesso
<a name="arn-support-validation"></a>

Per risolvere gli scenari in cui i valori ARN non possono essere recuperati, il plugin aws supporta un [endpoint dell'API di gestione RabbitMQ](https://github.com/amazon-mq/rabbitmq-aws/blob/main/API.md) che può essere chiamato per verificare se Amazon MQ è in grado di assumere correttamente il ruolo e risolverlo. AWS ARNs In questo modo si evita la necessità di aggiornare la configurazione del broker, aggiornare il broker con la nuova revisione della configurazione e riavviare il broker per testare le modifiche alla configurazione.

**Nota**  
L'uso di questa API richiede un utente amministratore RabbitMQ esistente. Amazon MQ consiglia di creare broker di test con un utente interno oltre ad altri metodi di accesso. Scopri come [abilitare sia l'autenticazione OAuth 2.0 che quella semplice (interna)](oauth-tutorial.md#oauth-tutorial-config-both-auth-methods-using-cli). Questo utente può quindi essere utilizzato per accedere all'API di convalida.

**Nota**  
Sebbene il plugin aws supporti il passaggio di un nuovo ruolo come input all'API di convalida, questo parametro non è supportato da Amazon MQ. Il ruolo IAM utilizzato per la convalida deve corrispondere al valore della configurazione del `aws.arns.assume_role_arn` broker.

## Stati di quarantena dei broker correlati
<a name="arn-support-quarantine-states"></a>

Per informazioni sugli stati di quarantena dei broker relativi ai problemi di supporto ARN, consulta:
+ [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)

## Scenario di esempio
<a name="arn-support-example-scenario"></a>
+ Il broker `b-f0fc695e-2f9c-486b-845a-988023a3e55b` è stato configurato per utilizzare il ruolo IAM per accedere al segreto `<role>` Gestione dei segreti AWS `<arn>`
+ Se il ruolo fornito ad Amazon MQ non dispone dell'autorizzazione di lettura sul Gestione dei segreti AWS segreto, nei log di RabbitMQ verrà visualizzato il seguente errore:

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

  Inoltre, il broker entrerà nello stato di quarantena. `INVALID_ASSUMEROLE` Per ulteriori informazioni, vedere [INVALID\$1ASSUMEROLE](troubleshooting-action-required-codes-invalid-assumerole.md).
+ I tentativi di autenticazione LDAP falliranno con il seguente errore:

  ```
  [error] <0.254.0> LDAP bind failed: invalid_credentials
  ```
+ Correggi il ruolo IAM con le autorizzazioni appropriate
+ Chiama l'endpoint di convalida per verificare se RabbitMQ è ora in grado di accedere al segreto:

  ```
  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 '.'
  ```