

# Asociación de un rol de IAM con un clúster de base de datos Amazon Aurora MySQL
<a name="AuroraMySQL.Integrating.Authorizing.IAM.AddRoleToDBCluster"></a>

Para permitir a los usuarios de una base de datos en un clúster de base de datos de Amazon Aurora acceder a otros servicios de AWS, debe asociar el rol de IAM que creó en [Creación de un rol de IAM que permita a Amazon Aurora acceder a los servicios de AWS](AuroraMySQL.Integrating.Authorizing.IAM.CreateRole.md) con ese clúster de base de datos. También puedehacer que AWS cree un nuevo rol de IAM asociando el servicio directamente.

**nota**  
No se puede asociar un rol de IAM a un clúster de base de datos de Aurora Serverless v1. Para obtener más información, consulte [Uso de Amazon Aurora Serverless v1](aurora-serverless.md).  
Se puede asociar un rol de IAM a un clúster de base de datos de Aurora Serverless v2.

Para asociar un rol de IAM con un clúster de base de datos es necesario hacer dos cosas:

1. Añadir el rol a la lista de roles asociados del clúster de base de datos con la consola de RDS, el comando [add-role-to-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/add-role-to-db-cluster.html) de la AWS CLI o la operación [AddRoleToDBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_AddRoleToDBCluster.html) de la API de RDS.

   Puede añadir un máximo de cinco roles de IAM por cada clúster de base de datos Aurora.

1. Establecer el ARN del rol de IAM asociado en el parámetro a nivel de clúster para el servicio de AWS de que se trate.

   En la tabla siguiente se indican los nombres de los parámetros a nivel de clúster para los roles de IAM empleados en el acceso a otros servicios de AWS.    
<a name="aurora_cluster_params_iam_roles"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Integrating.Authorizing.IAM.AddRoleToDBCluster.html)

Para asociar un rol de IAM que permita al clúster de Amazon RDS comunicarse con otros servicios de AWS en su nombre, siga estos pasos.

## Consola
<a name="AuroraMySQL.Integrating.Authorizing.IAM.AddRoleToDBCluster.CON"></a>

**Para asociar un rol de IAM a un clúster de base de datos Aurora con la consola**

1. Abra la consola de RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Seleccione **Databases (Bases de datos)**.

1. Elija el nombre del clúster de base de datos de Aurora al que desea asociar un rol de IAM para mostrar sus detalles.

1. En la pestaña **Connectivity & security** (Conectividad y seguridad), en la sección **Manage IAM roles** (Administrar roles de IAM), realice una de las siguientes acciones:
   + **Select IAM roles to add to this cluster** (Seleccionar roles de IAM que desea agregar a este clúster) (predeterminado)
   + **Select a service to connect to this cluster** (Seleccionar un servicio para conectarse a este clúster)  
![\[Asociar un rol de IAM con un clúster de base de datos\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/AuroraUserGuide/images/AuroraAssociateIAMRole-02.png)

1. Para usar un rol de IAM existente, selecciónelo en el menú y, a continuación, seleccione **Add role** (Añadir rol).

   Si se agrega el rol correctamente, su estado se muestra como `Pending`, luego como `Available`.

1. Para conectar un servicio directamente:

   1. Elija **Select a service to connect to this cluster** (Seleccionar un servicio para conectarse a este clúster).

   1. Elija el servicio en el menú y, a continuación, seleccione **Connect service** (Conectar servicio).

   1. Para **Connect cluster to *Service Name*** (Conectar clúster a nombre de servicio), introduzca el Nombre de recurso de Amazon (ARN) que se utilizará para conectarse al servicio y, a continuación, seleccione **Connect service** (Conectar servicio).

   AWS crea un nuevo rol de IAM para conectarse al servicio. Su estado se muestra como `Pending`, luego como `Available`.

1. (Opcional) Para dejar de asociar un rol de IAM a un clúster de base de datos y retirarle el permiso correspondiente, elija el rol y luego **Delete (Eliminar)**.

**Establezca el parámetro de nivel de clúster para cada rol de IAM asociado.**

1. En la consola de RDS, elija **Parameter groups (Grupos de parámetros)** en el panel de navegación.

1. Si ya está usando un grupo de parámetros de base de datos personalizado, puede seleccionarlo para usarlo en lugar de crear uno nuevo. Si utiliza el grupo de parámetros de clúster de base de datos predeterminado, cree un nuevo grupo de parámetros de clúster de base de datos como se describe en los pasos siguientes:

   1. Elija **Create parameter group**.

   1. En **Familia de grupo de parámetros**, elija `aurora-mysql8.0` para un clúster de base de datos compatible con Aurora MySQL 8.0 o `aurora-mysql5.7` para un clúster de base de datos compatible con Aurora MySQL 5.7.

   1. En **Type (Tipo)**, elija **DB Cluster Parameter Group (Grupo de parámetros de clúster de base de datos)**. 

   1. Para **Nombre de grupo**, escriba el nombre del nuevo grupo de parámetros de clúster de base de datos.

   1. En **Descripción**, escriba una descripción del nuevo grupo de parámetros de clúster de base de datos.  
![\[Crear un grupo de parámetros de clúster de base de datos\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/AuroraUserGuide/images/AuroraAssociateIAMRole-03.png)

   1. Seleccione **Create (Crear)**. 

1. En la página **Parameter groups (Grupos de parámetros)**, seleccione su grupo de parámetros de clúster de base de datos y elija **Edit (Editar)** en **Parameter group actions (Acciones de grupos de parámetros)**.

1. Establezca los [parámetros](#aurora_cluster_params_iam_roles) a nivel de clúster adecuados en los valores de ARN de rol de IAM correspondientes.

   Por ejemplo, puede establecer solo en el parámetro `aws_default_s3_role` el valor `arn:aws:iam::123456789012:role/AllowS3Access`.

1. Elija **Save changes**.

1. Para cambiar el grupo de parámetros del clúster de base de datos para su clúster de base de datos, realice los siguientes pasos:

   1. Elija **Databases** (Bases de datos) y, a continuación, seleccione el clúster de base de datos de Aurora.

   1. Elija **Modify**.

   1. Desplácese hasta **Database options** (Opciones de base de datos) y establezca en **DB cluster parameter group** (Grupo de parámetros de clúster de base de datos) el grupo de parámetros de clúster de base de datos.

   1. Elija **Continue**.

   1. Verifique los cambios y elija **Apply immediately (Aplicar inmediatamente)**.

   1. Elija **Modify Cluster (Modificar clúster)**.

   1. Elija **Databases** (Bases de datos) y, a continuación, seleccione la instancia principal del clúster de base de datos.

   1. Para **Actions (Acciones)**, elija **Reboot (Reiniciar)**.

      Una vez reiniciada la instancia, el rol de IAM se asocia al clúster de base de datos.

      Para obtener más información acerca de los grupos de parámetros de clúster, consulte [Parámetros de configuración de Aurora MySQL](AuroraMySQL.Reference.ParameterGroups.md).

## CLI
<a name="AuroraMySQL.Integrating.Authorizing.IAM.AddRoleToDBCluster.CLI"></a>

**Para asociar un rol de IAM a un clúster de base de datos con la AWS CLI**

1. Ejecute el comando `add-role-to-db-cluster` desde la AWS CLI para añadir los ARN de los roles de IAM al clúster de base de datos, como se muestra a continuación. 

   ```
   PROMPT> aws rds add-role-to-db-cluster --db-cluster-identifier my-cluster --role-arn arn:aws:iam::123456789012:role/AllowAuroraS3Role
   PROMPT> aws rds add-role-to-db-cluster --db-cluster-identifier my-cluster --role-arn arn:aws:iam::123456789012:role/AllowAuroraLambdaRole
   ```

1. Si utiliza el grupo de parámetros de clúster de base de datos predeterminado, cree un nuevo grupo de parámetros de clúster de base de datos. Si ya está usando un grupo de parámetros de base de datos personalizado, puede usarlo en lugar de crear uno nuevo.

   Para crear un nuevo grupo de parámetros de clúster de base de datos, ejecute el comando `create-db-cluster-parameter-group` desde la AWS CLI, como se muestra a continuación.

   ```
   PROMPT> aws rds create-db-cluster-parameter-group  --db-cluster-parameter-group-name AllowAWSAccess \
        --db-parameter-group-family aurora5.7 --description "Allow access to Amazon S3 and AWS Lambda"
   ```

   En el caso de un clúster de base de datos compatible con Aurora MySQL 5.7, especifique `aurora-mysql5.7` para `--db-parameter-group-family`. En el caso de un clúster de base de datos compatible con Aurora MySQL 8.0, especifique `aurora-mysql8.0` para `--db-parameter-group-family`.

1. Configure el parámetro o parámetros adecuados a nivel de clúster y los valores de ARN de rol de IAM correspondientes dentro del grupo de parámetros de clúster de base de datos, como se muestra a continuación. 

   ```
   PROMPT> aws rds modify-db-cluster-parameter-group --db-cluster-parameter-group-name AllowAWSAccess \
       --parameters "ParameterName=aws_default_s3_role,ParameterValue=arn:aws:iam::123456789012:role/AllowAuroraS3Role,method=pending-reboot" \
       --parameters "ParameterName=aws_default_lambda_role,ParameterValue=arn:aws:iam::123456789012:role/AllowAuroraLambdaRole,method=pending-reboot"
   ```

1. Modifique el clúster de base de datos de modo que use el nuevo grupo de parámetros de clúster de base de datos y, a continuación, reinicie el clúster, como se muestra a continuación.

   ```
   PROMPT> aws rds modify-db-cluster --db-cluster-identifier my-cluster --db-cluster-parameter-group-name AllowAWSAccess
   PROMPT> aws rds reboot-db-instance --db-instance-identifier my-cluster-primary
   ```

   Una vez reiniciada la instancia, los roles de IAM están asociados al clúster de base de datos.

   Para obtener más información acerca de los grupos de parámetros de clúster, consulte [Parámetros de configuración de Aurora MySQL](AuroraMySQL.Reference.ParameterGroups.md).