

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.

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

[MemoryDB utiliza funciones vinculadas al servicio AWS Identity and Access Management (IAM).](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) Un rol vinculado a un servicio es un tipo único de rol de IAM que está vinculado directamente a un servicio, como MemoryDB. AWS MemoryDB predefine los roles vinculados a servicios de MemoryDB. Incluyen todos los permisos que requiere el servicio para llamar a otros servicios de AWS en nombre de los clústeres. 

Un rol vinculado a un servicio simplifica la configuración de MemoryDB porque ya no tendrá que agregar manualmente los permisos necesarios. Los roles ya existen en su AWS cuenta, pero están vinculados a casos de uso de MemoryDB y tienen permisos predefinidos. Solo MemoryDB puede asumir estos roles, y solo estos roles pueden usar la política de permisos predefinida. Las funciones se pueden eliminar únicamente después de eliminar primero sus recursos relacionados. De esta forma se protegen los recursos de MemoryDB, ya que evita que se puedan eliminar accidentalmente permisos necesarios de acceso a los recursos.

Para obtener información acerca de otros servicios que admiten 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) y busque los servicios que muestran **Sí** en la columna **Rol vinculado a un servicio**. Elija una opción **Sí** con un enlace para ver la documentación acerca del rol vinculado al servicio en cuestión.

**Contents**
+ [Permisos de roles vinculados a servicios](#service-linked-role-permissions)
+ [Creación de un rol vinculado a servicios (IAM)](#create-service-linked-role-iam)
  + [Uso de la consola de IAM](#create-service-linked-role-iam-console)
  + [Uso de la CLI de IAM](#create-service-linked-role-iam-cli)
  + [Uso de la API de IAM](#create-service-linked-role-iam-api)
+ [Edición de la descripción de un rol vinculado a servicio](#edit-service-linked-role)
  + [Uso de la consola de IAM](#edit-service-linked-role-iam-console)
  + [Uso de la CLI de IAM](#edit-service-linked-role-iam-cli)
  + [Uso de la API de IAM](#edit-service-linked-role-iam-api)
+ [Eliminación de un rol vinculado a un servicio para MemoryDB](#delete-service-linked-role)
  + [Limpiar un rol vinculado a un servicio](#service-linked-role-review-before-delete)
  + [Eliminación de un rol vinculado a servicios (consola de IAM)](#delete-service-linked-role-iam-console)
  + [Eliminación de un rol vinculado a servicios (CLI de IAM)](#delete-service-linked-role-iam-cli)
  + [Eliminación de un rol vinculado a servicios (API de IAM)](#delete-service-linked-role-iam-api)

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

MemoryDB usa el rol vinculado al servicio denominado **AWSServiceRoleForMemoryDB. Esta política permite a MemoryDB** administrar los AWS recursos en su nombre según sea necesario para administrar sus clústeres.

La política de permisos de roles vinculados al servicio de AWSService RoleForMemory base de datos permite a MemoryDB realizar las siguientes acciones en los recursos especificados:

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateTags"
			],
			"Resource": "arn:aws-cn:ec2:*:*:network-interface/*",
			"Condition": {
				"StringEquals": {
					"ec2:CreateAction": "CreateNetworkInterface"
				},
				"ForAllValues:StringEquals": {
					"aws:TagKeys": [
						"AmazonMemoryDBManaged"
					]
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:CreateNetworkInterface"
			],
			"Resource": [
				"arn:aws-cn:ec2:*:*:network-interface/*",
				"arn:aws-cn:ec2:*:*:subnet/*",
				"arn:aws-cn:ec2:*:*:security-group/*"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:DeleteNetworkInterface",
				"ec2:ModifyNetworkInterfaceAttribute"
			],
			"Resource": "arn:aws-cn:ec2:*:*:network-interface/*",
			"Condition": {
				"StringEquals": {
					"ec2:ResourceTag/AmazonMemoryDBManaged": "true"
				}
			}
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:DeleteNetworkInterface",
				"ec2:ModifyNetworkInterfaceAttribute"
			],
			"Resource": "arn:aws-cn:ec2:*:*:security-group/*"
		},
		{
			"Effect": "Allow",
			"Action": [
				"ec2:DescribeSecurityGroups",
				"ec2:DescribeNetworkInterfaces",
				"ec2:DescribeAvailabilityZones",
				"ec2:DescribeSubnets",
				"ec2:DescribeVpcs"
			],
			"Resource": "*"
		},
		{
			"Effect": "Allow",
			"Action": [
				"cloudwatch:PutMetricData"
			],
			"Resource": "*",
			"Condition": {
				"StringEquals": {
					"cloudwatch:namespace": "AWS/MemoryDB"
				}
			}
		}
	]
}
```

------

Para obtener más información, consulte [AWS política gestionada: memoria DBService RolePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-memorydbServiceRolePolicy).

**Para permitir que una entidad de IAM cree funciones vinculadas al servicio de base de datos AWSService RoleForMemory**

Agregue la siguiente instrucción de política a los permisos para esa entidad de IAM:

```
{
    "Effect": "Allow",
    "Action": [
        "iam:CreateServiceLinkedRole",
        "iam:PutRolePolicy"
    ],
    "Resource": "arn:aws:iam::*:role/aws-service-role/memorydb.amazonaws.com/AWSServiceRoleForMemoryDB*",
    "Condition": {"StringLike": {"iam:AWS ServiceName": "memorydb.amazonaws.com"}}
}
```

**Para permitir que una entidad de IAM elimine funciones vinculadas al servicio de base de datos AWSService RoleForMemory**

Agregue la siguiente instrucción de política a los permisos para esa entidad de IAM:

```
{
    "Effect": "Allow",
    "Action": [
        "iam:DeleteServiceLinkedRole",
        "iam:GetServiceLinkedRoleDeletionStatus"
    ],
    "Resource": "arn:aws:iam::*:role/aws-service-role/memorydb.amazonaws.com/AWSServiceRoleForMemoryDB*",
    "Condition": {"StringLike": {"iam:AWS ServiceName": "memorydb.amazonaws.com"}}
}
```

Como alternativa, puede utilizar una política AWS gestionada para proporcionar acceso completo a MemoryDB.

## Creación de un rol vinculado a servicios (IAM)
<a name="create-service-linked-role-iam"></a>

Puede crear un rol vinculado a servicios mediante la consola de IAM, la CLI o la API.

### Creación de un rol vinculado a servicios (consola de IAM)
<a name="create-service-linked-role-iam-console"></a>

Puede utilizar la consola de IAM para crear un rol vinculado a un servicio.

**Para crear un rol vinculado a un servicio (consola)**

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

1. En el panel de navegación izquierdo de la consola de IAM, elija **Roles**. A continuación, elija **Create new role (Crear nuevo rol)**.

1. En **Select type of trusted entity** (Seleccionar el tipo de entidad de confianza), elija **AWS Service** (Servicio de ).

1. En **O seleccione un servicio para ver los casos de uso**, elija **MemoryDB**.

1. Elija **Siguiente: permisos**.

1. En **Policy name** (Nombre de la política), tenga en cuenta que `MemoryDBServiceRolePolicy` es necesario para este rol. Elija **Siguiente:Etiquetas**.

1. Tenga en cuenta que las etiquetas no son compatibles con los roles vinculados a servicios. Elija **Next: Review**.

1. (Opcional) En **Descripción del rol**, edite la descripción del nuevo rol vinculado al servicio.

1. Revise el rol y, a continuación, seleccione **Crear rol**.

### Creación de un rol vinculado a servicios (CLI de IAM)
<a name="create-service-linked-role-iam-cli"></a>

Puede utilizar las operaciones de IAM desde el AWS Command Line Interface para crear un rol vinculado a un servicio. Este rol puede incluir la política de confianza y las políticas insertadas que el servicio necesita para asumir el rol.

**Para crear un rol vinculado a un servicio (CLI)**

Use la operación siguiente:

```
$ aws iam [create-service-linked-role](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateServiceLinkedRole.html) --aws-service-name memorydb.amazonaws.com
```

### Creación de un rol vinculado a servicios (API de IAM)
<a name="create-service-linked-role-iam-api"></a>

Puede utilizar la API de IAM para crear un rol vinculado a servicios. Este rol puede contener la política de confianza y las políticas insertadas que el servicio necesita para asumir el rol.

**Para crear un rol vinculado a un servicio (API)**

Use la llamada de API de [CreateServiceLinkedRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateServiceLinkedRole.html). En la solicitud, especifique el nombre del servicio de `memorydb.amazonaws.com`. 

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

MemoryDB no permite editar el rol vinculado al servicio de base de datos. AWSService RoleForMemory 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.

### Edición de la descripción de un rol vinculado a servicios (consola de IAM)
<a name="edit-service-linked-role-iam-console"></a>

Puede utilizar la consola de IAM para editar una descripción de rol vinculado a servicios.

**Para editar la descripción de un rol vinculado a un servicio (consola)**

1. En el panel de navegación izquierdo de la consola de IAM, elija **Roles**.

1. Seleccione el nombre del rol que desea modificar.

1. En el extremo derecho de **Role description**, seleccione **Edit**. 

1. Ingrese una descripción nueva en el cuadro **Save** (Guardar).

### Edición de la descripción de un rol vinculado a servicios (CLI de IAM)
<a name="edit-service-linked-role-iam-cli"></a>

Puede utilizar las operaciones de IAM desde el para editar la descripción de un rol vinculado AWS Command Line Interface a un servicio.

**Para cambiar la descripción de un rol vinculado a un servicio (CLI)**

1. (Opcional) Para ver la descripción actual de un rol, utilice la operación AWS CLI for IAM. `[get-role](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html)`  
**Example**  

   ```
   $ aws iam [get-role](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html) --role-name AWSServiceRoleForMemoryDB
   ```

   Utilice el nombre del rol, no el ARN, para hacer referencia a los roles con las operaciones de la CLI. Por ejemplo, si una función tiene el ARN `arn:aws:iam::123456789012:role/myrole`, debe referirse a él como **myrole**.

1. Para actualizar la descripción de un rol vinculado a un servicio, utilice la operación AWS CLI for IAM. `[update-role-description](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateRoleDescription.html)`

   Para Linux, macOS o Unix:

   ```
   $ aws iam [update-role-description](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateRoleDescription.html) \
       --role-name AWSServiceRoleForMemoryDB \
       --description "new description"
   ```

   Para Windows:

   ```
   $ aws iam [update-role-description](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateRoleDescription.html) ^
       --role-name AWSServiceRoleForMemoryDB ^
       --description "new description"
   ```

### Edición de la descripción de un rol vinculado a servicios (API de IAM)
<a name="edit-service-linked-role-iam-api"></a>

Puede utilizar la API de IAM para editar una descripción de rol vinculado a servicios.

**Para cambiar la descripción de un rol vinculado a un servicio (API)**

1. (Opcional) Para ver la descripción actual de un rol, utilice la operación de la API de IAM [GetRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html).  
**Example**  

   ```
   https://iam.amazonaws.com/
      ?Action=[GetRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html)
      &RoleName=AWSServiceRoleForMemoryDB
      &Version=2010-05-08
      &AUTHPARAMS
   ```

1. Para actualizar la descripción de un rol, utilice la operación de la API de IAM [UpdateRoleDescription](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateRoleDescription.html).  
**Example**  

   ```
   https://iam.amazonaws.com/
      ?Action=[UpdateRoleDescription](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateRoleDescription.html)
      &RoleName=AWSServiceRoleForMemoryDB
      &Version=2010-05-08
      &Description="New description"
   ```

## Eliminación de un rol vinculado a un servicio para MemoryDB
<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. De esta forma no tiene una entidad no utilizada que no se monitoree ni mantenga de forma activa. Sin embargo, debe limpiar el rol vinculado al servicio antes de eliminarlo.

MemoryDB no elimina automáticamente el rol vinculado a servicio.

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

Antes de que pueda utilizar IAM para eliminar un rol vinculado a servicios, primero confirme que el rol no tiene recursos (clústeres) asociados a él.

**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 Consola de administración de AWS IAM y ábrala en. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. En el panel de navegación izquierdo de la consola de IAM, elija **Roles**. A continuación, seleccione el nombre (no la casilla de verificación) de la función de AWSService RoleForMemory base de datos.

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.

**Para eliminar los recursos de MemoryDB que requieren AWSService RoleForMemory DB (consola)**
+ Para eliminar un clúster, consulte los siguientes temas:
  + [Usando el Consola de administración de AWS](getting-started.md#clusters.deleteclusters.viewdetails)
  + [Usando el AWS CLI](getting-started.md#clusters.delete.cli)
  + [Uso de la API de MemoryDB](getting-started.md#clusters.delete.api)

### Eliminación de un rol vinculado a servicios (consola de IAM)
<a name="delete-service-linked-role-iam-console"></a>

Puede utilizar la consola de IAM para eliminar un rol vinculado a un servicio.

**Para eliminar un rol vinculado a un servicio (consola)**

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

1. En el panel de navegación izquierdo de la consola de IAM, elija **Roles**. A continuación, seleccione la casilla junto al nombre del rol que desea eliminar, no el nombre ni la fila. 

1. En **Role actions (Acciones de rol)** en la parte superior de la página, elija **Delete role (Eliminar rol)**.

1. En la página de confirmación, revise los datos del servicio al que se accedió por última vez, que muestran cuándo accedió por última vez a un AWS servicio cada uno de los roles seleccionados. Esto lo ayuda a confirmar si el rol está actualmente activo. Si desea continuar, seleccione **Yes, Delete** para enviar la solicitud de eliminación del rol vinculado al servicio.

1. Consulte las notificaciones de la consola de IAM para monitorear el progreso de la eliminación del rol vinculado al servicio. Como el proceso de eliminación del rol vinculado al servicio de IAM es asíncrono, dicha tarea puede realizarse correctamente o fallar después de que envía la solicitud de eliminación. Si la tarea no se realiza correctamente, puede seleccionar **View details (Ver detalles)** o **View Resources (Ver recursos)** desde las notificaciones para obtener información sobre el motivo por el que no se pudo eliminar el rol.

### Eliminación de un rol vinculado a servicios (CLI de IAM)
<a name="delete-service-linked-role-iam-cli"></a>

Puede utilizar las operaciones de IAM desde allí AWS Command Line Interface para eliminar un rol vinculado a un servicio.

**Para eliminar un rol vinculado a un servicio (CLI)**

1. Si no conoce el nombre del rol vinculado a servicios que desea eliminar, ingrese el siguiente comando. Este comando muestra las funciones y sus nombres de recursos de Amazon (ARNs) en su cuenta.

   ```
   $ aws iam [get-role](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html) --role-name role-name
   ```

   Utilice el nombre del rol, no el ARN, para hacer referencia a los roles con las operaciones de la CLI. Por ejemplo, si un rol tiene el ARN `arn:aws:iam::123456789012:role/myrole`, debe referirse a él como **myrole**.

1. Como los roles vinculados a servicios no se puede eliminar si están en uso o tienen recursos asociados, debe enviar una solicitud de eliminación. Esta solicitud puede denegarse si no se cumplen estas condiciones. Debe apuntar el valor `deletion-task-id` de la respuesta para comprobar el estado de la tarea de eliminación. Ingrese lo siguiente para enviar una solicitud de eliminación de un rol vinculado a servicios.

   ```
   $ aws iam [delete-service-linked-role](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteServiceLinkedRole.html) --role-name role-name
   ```

1. Ingrese lo siguiente para verificar el estado de la tarea de eliminación.

   ```
   $ aws iam [get-service-linked-role-deletion-status](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetServiceLinkedRoleDeletionStatus.html) --deletion-task-id deletion-task-id
   ```

   El estado de la tarea de eliminación puede ser `NOT_STARTED`, `IN_PROGRESS`, `SUCCEEDED` o `FAILED`. Si ocurre un error durante la eliminación, la llamada devuelve el motivo del error para que pueda resolver el problema.

### Eliminación de un rol vinculado a servicios (API de IAM)
<a name="delete-service-linked-role-iam-api"></a>

Puede utilizar la API de IAM para eliminar un rol vinculado a un servicio.

**Para eliminar un rol vinculado a un servicio (API)**

1. Para enviar una solicitud de eliminación de un rol vinculado a un servicio, llame a [DeleteServiceLinkedRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteServiceLinkedRole.html). En la solicitud, especifique el nombre del rol.

   Como los roles vinculados a servicios no se puede eliminar si están en uso o tienen recursos asociados, debe enviar una solicitud de eliminación. Esta solicitud puede denegarse si no se cumplen estas condiciones. Debe apuntar el valor `DeletionTaskId` de la respuesta para comprobar el estado de la tarea de eliminación.

1. Para comprobar el estado de la tarea de eliminación, realice una llamada a [GetServiceLinkedRoleDeletionStatus](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetServiceLinkedRoleDeletionStatus.html). En la solicitud, especifique el valor de `DeletionTaskId`.

   El estado de la tarea de eliminación puede ser `NOT_STARTED`, `IN_PROGRESS`, `SUCCEEDED` o `FAILED`. Si ocurre un error durante la eliminación, la llamada devuelve el motivo del error para que pueda resolver el problema.