

# Uso de roles de IAM vinculados a servicios para DAX
<a name="using-service-linked-roles"></a>

Amazon DynamoDB Accelerator (DAX) utiliza [roles vinculados a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) de AWS Identity and Access Management (IAM). Un rol vinculado a un servicio es un tipo único de rol de IAM que está vinculado directamente a DAX. Los roles vinculados a servicios están predefinidos por DAX e incluyen todos los permisos que el servicio requiere para llamar a otros servicios de AWS en su nombre. 

Un rol vinculado a un servicio simplifica la configuración de DAX porque ya no tendrá que agregar manualmente los permisos necesarios. DAX define los permisos de sus roles vinculados a servicios y, a menos que esté definido de otra manera, solo DAX puede asumir sus roles. Los permisos definidos incluyen la política de confianza y la política de permisos. Dicha política de permisos no se puede asociar a ninguna otra entidad de IAM.

Las funciones se pueden eliminar únicamente después de eliminar primero sus recursos relacionados. De esta forma, se protegen los recursos de DAX, ya que se evita que pueda eliminar accidentalmente permisos de acceso a los recursos.

Para obtener más información sobre otros servicios que admiten los roles vinculados a servicios, consulte [Servicios de AWS que funcionan con IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) en la *Guía del usuario de IAM*. Busque los servicios para los que se indique **Yes (Sí)** en la columna **Service-linked roles (Roles vinculados a servicios)**. Elija el vínculo **Yes (Sí)** para ver la documentación acerca del rol vinculado a un servicio en cuestión.

**Topics**
+ [Permisos de roles vinculados a servicios para DAX](#service-linked-role-permissions)
+ [Creación de un rol vinculado a un servicio para DAX](#create-service-linked-role)
+ [Edición de un rol vinculado a un servicio para DAX](#edit-service-linked-role)
+ [Eliminación de un rol vinculado a un servicio para DAX](#delete-service-linked-role)

## Permisos de roles vinculados a servicios para DAX
<a name="service-linked-role-permissions"></a>

DAX usa el rol vinculado a servicios denominado `AWSServiceRoleForDAX`. Este rol permite a DAX llamar a servicios en nombre de su clúster de DAX.

**importante**  
El rol vinculado a un servicio `AWSServiceRoleForDAX` le facilita la configuración y el mantenimiento de un clúster de DAX. Sin embargo, debe conceder acceso a DynamoDB a cada clúster antes de poder usarlo. Para obtener más información, consulte [Control de acceso a DAX](DAX.access-control.md).

El rol vinculado al servicio `AWSServiceRoleForDAX` confía en los siguientes servicios para asumir el rol:
+ `dax.amazonaws.com`

La política de permisos del rol permite que DAX realice las siguientes acciones en los recursos especificados:
+ Acciones en `ec2`:
  + `AuthorizeSecurityGroupIngress`
  + `CreateNetworkInterface`
  + `CreateSecurityGroup`
  + `DeleteNetworkInterface`
  + `DeleteSecurityGroup`
  + `DescribeAvailabilityZones`
  + `DescribeNetworkInterfaces`
  + `DescribeSecurityGroups`
  + `DescribeSubnets`
  + `DescribeVpcs`
  + `ModifyNetworkInterfaceAttribute`
  + `RevokeSecurityGroupIngress`

Debe configurar permisos para permitir a una entidad de IAM (como un usuario, grupo o rol) crear, editar o eliminar un rol vinculado a servicios. Para obtener más información, consulte [Permisos de roles vinculados a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) en la *Guía del usuario de IAM*.

**Para permitir a una entidad de IAM crear roles vinculados a servicios AWSServiceRoleForDAX**

 Añada la siguiente instrucción de política a los permisos para esa entidad de IAM.

```
{
    "Effect": "Allow",
    "Action": [
        "iam:CreateServiceLinkedRole"
    ],
    "Resource": "*",
    "Condition": {"StringLike": {"iam:AWSServiceName": "dax.amazonaws.com"}}
}
```

## Creación de un rol vinculado a un servicio para DAX
<a name="create-service-linked-role"></a>

No necesita crear manualmente un rol vinculado a servicios. Cuando crea un clúster, DAX se encarga de crearle el rol vinculado al servicio. 

**importante**  
Si utilizaba el servicio de DAX antes del 28 de febrero de 2018, cuando se comenzaron a admitir roles vinculados a servicios, DAX creó el rol `AWSServiceRoleForDAX` en su cuenta. Para obtener más información, consulte [Un nuevo rol ha aparecido en mi cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared) en la *Guía del usuario de IAM*.

Si elimina este rol vinculado a un servicio y necesita crearlo de nuevo, puede utilizar el mismo proceso para volver a crear el rol en su cuenta. Cuando crea una instancia o un clúster, DAX se encarga de crearle de nuevo el rol vinculado al servicio.

## Edición de un rol vinculado a un servicio para DAX
<a name="edit-service-linked-role"></a>

DAX no le permite editar el rol vinculado a servicios `AWSServiceRoleForDAX`. Después de crear un rol vinculado al servicio, no podrá cambiar el nombre del rol, ya que varias entidades podrían hacer referencia al rol. Sin embargo, sí puede editar la descripción del rol con IAM. Para obtener más información, consulte [Edición de un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) en la *Guía del usuario de IAM*.

## Eliminación de un rol vinculado a un servicio para DAX
<a name="delete-service-linked-role"></a>

Si ya no necesita usar una característica o servicio que requieran un rol vinculado a un servicio, le recomendamos que elimine dicho rol. Así no tendrá una entidad no utilizada que no se supervise ni mantenga de forma activa. Sin embargo, debe eliminar todos los clústeres de DAX para poder eliminar el rol vinculado al servicio.

### Limpiar un rol vinculado a servicios
<a name="service-linked-role-review-before-delete"></a>

Antes de poder utilizar IAM para eliminar un rol vinculado a un servicio, primero debe confirmar que dicho rol no tiene sesiones activas y eliminar los recursos que utiliza.

**Para comprobar si el rol vinculado a un servicio tiene una sesión activa en la consola de IAM**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación de la consola de IAM, elija **Roles**. Luego, elija el nombre (no la casilla de verificación) del rol **AWSServiceRoleForDAX**.

1. En la página **Resumen** del rol seleccionado, seleccione la pestaña **Asesor de acceso**.

1. En la pestaña **Asesor de acceso**, revise la actividad reciente del rol vinculado a servicios.
**nota**  
Si no está seguro de si DAX utiliza el rol `AWSServiceRoleForDAX`, puede intentar eliminar el rol para comprobarlo. Si el servicio está utilizando el rol, este no podrá eliminarse, y podrá ver las regiones en las que se está utilizando. Si el rol se está utilizando, entonces debe eliminar sus clústeres de DAX antes de poder eliminar el rol. No se puede revocar la sesión de un rol vinculado a un servicio. 

Si desea eliminar el rol `AWSServiceRoleForDAX`, primero debe eliminar todos sus clústeres de DAX. 

#### Eliminación de todos los clústeres de DAX
<a name="delete-service-linked-role.clusters"></a>

Use alguno de estos procedimientos para eliminar cada uno de sus clústeres de DAX. 

**Para eliminar un clúster de DAX (consola)**

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

1. En el panel de navegación, en **DAX**, elija **Clusters (Clústeres)**.

1. Elija **Acciones** y, a continuación, elija **Eliminar**.

1. En el recuadro **Delete cluster confirmation (Eliminar confirmación de clúster)**, elija **Delete (Eliminar)**.

**Para eliminar un clúster de DAX (AWS CLI)**  
Consulte [delete-cluster](https://docs.aws.amazon.com/cli/latest/reference/dax/delete-cluster.html) en la *Referencia de comandos de la AWS CLI*.

**Para eliminar un clúster de DAX (API)**  
Consulte [DeleteCluster](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_dax_DeleteCluster.html) en la *Referencia de la API de Amazon DynamoDB*.

#### Eliminación del rol vinculado a un servicio
<a name="delete-service-linked-role.slr"></a>

**Para eliminar manualmente el rol vinculado a servicios mediante IAM**

Utilice la consola de IAM, la CLI de IAM o la API de IAM para eliminar el rol vinculado a servicios `AWSServiceRoleForDAX`. Para obtener más información, consulte [Eliminación de un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) en la *Guía del usuario de IAM*.