

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.

# Creación y uso de permisos gestionados por el cliente en AWS RAM
<a name="create-customer-managed-permissions"></a>

AWS Resource Access Manager (AWS RAM) proporciona al menos un permiso AWS administrado para cada tipo de recurso que puedas compartir. No obstante, es posible que dichos permisos administrados no proporcionen [acceso con privilegio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) para su caso de uso compartido. Si uno de los permisos AWS gestionados proporcionados no funciona, puedes crear tu propio *permiso gestionado por el cliente*.

Los permisos administrados por el cliente son permisos administrados que usted crea y mantiene especificando con precisión qué acciones se pueden realizar en los recursos que se comparten con AWS RAM y en qué condiciones. Por ejemplo, digamos que desea limitar el acceso de lectura a sus grupos del Administrador de direcciones IP (IPAM) de Amazon VPC, que le ayudan a administrar sus direcciones IP a gran escala. Puede crear permisos administrados por el cliente para que sus desarrolladores asignen direcciones IP, pero no ver el rango de direcciones IP que asignan otras cuentas de desarrollador. Puede seguir las prácticas recomendadas de privilegio mínimo para conceder únicamente los permisos necesarios para realizar tareas en los recursos compartidos.

Además, puede actualizar o eliminar los permisos administrados por el cliente según sea necesario.

**Topics**
+ [Crear un permiso administrado por el cliente](#create_cmp)
+ [Crear una nueva versión de un permiso administrado por el cliente](#update_mp)
+ [Elegir una versión distinta para establecerla como versión predeterminada de un permiso administrado por el cliente](#set_new_mp_default_version)
+ [Eliminar una versión de un permiso administrado por el cliente](#delete_mp_version)
+ [Eliminar un permiso administrado por el cliente](#delete_mp)

## Crear un permiso administrado por el cliente
<a name="create_cmp"></a>

Los permisos gestionados por el cliente son específicos de un Región de AWS. Asegúrese de crear este permiso administrado por el cliente en la región que corresponda.

------
#### [ Console ]

**Para crear un permiso administrado por el cliente**

1. Lleve a cabo una de las siguientes acciones:
   + Vaya a la **[Biblioteca de permisos administrados](https://console.aws.amazon.com/ram/home#Permissions:)** y seleccione **Crear un permiso administrado por el cliente**. 
   + Vaya directamente a la página **[Crear un permiso administrado por el cliente](https://console.aws.amazon.com/ram/home#CreatePermission:)** de la consola.

1. Para ver los **detalles del permiso administrado por el cliente**, introduzca el nombre de un permiso administrado por el cliente.

1. Seleccione el tipo de recurso al que se aplica el permiso administrado.

1. En **Plantilla de política**, defina qué operaciones se pueden realizar en este tipo de recurso.
   + Puede seleccionar **Importar un permiso administrado** para usar las acciones de un permiso administrado existente.
   + Marque o desmarque la información de nivel de acceso en función de sus requisitos en el editor visual.
   + Añada o modifique condiciones con el **editor JSON**.

1. (Opcional) Para adjuntar etiquetas al permiso administrado, en **Etiquetas**, introduzca una clave y un valor de etiqueta. Para añadir más etiquetas, seleccione **Añadir nueva etiqueta**. Repita este paso tantas veces como sea necesario.

1. Una vez que haya terminado, seleccione **Crear permiso administrado por el cliente**.

------
#### [ AWS CLI ]

**Para crear un permiso administrado por el cliente**
+ Ejecute el comando [create-permission](https://docs.aws.amazon.com/cli/latest/reference/ram/create-permission.html) y especifique un nombre, el tipo de recurso al que se aplica el permiso administrado por el cliente y el texto principal de la plantilla de política.

  El siguiente comando de ejemplo crea un permiso administrado para el tipo de recurso `imagebuilder:Component`. 

  ```
  $ aws ram create-permission \
      --name TestCMP \
      --resource-type imagebuilder:Component \
      --policy-template "{\"Effect\":\"Allow\",\"Action\":[\"imagebuilder:ListComponents\"]}"
  {
      "permission": {
          "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP",
          "version": "1",
          "defaultVersion": true,
          "isResourceTypeDefault": false,
          "name": "TestCMP",
          "resourceType": "imagebuilder:Component",
          "status": "ATTACHABLE",
          "creationTime": 1680033769.401,
          "lastUpdatedTime": 1680033769.401
      }
  }
  ```

------

## Crear una nueva versión de un permiso administrado por el cliente
<a name="update_mp"></a>

Si cambia el caso de uso del permiso administrado por el cliente, puede crear una nueva versión del permiso administrado. Esta no afectará a los recursos compartidos existentes, solo a los recursos compartidos que cree en el futuro y que usen este permiso administrado por el cliente.

Cada permiso administrado puede tener hasta cinco versiones, pero solo es posible asociar la versión predeterminada.

------
#### [ Console ]

**Para crear una nueva versión de un permiso administrado por el cliente**

1. Vaya a la **[Biblioteca de permisos administrados](https://console.aws.amazon.com/ram/home#Permissions:)**.

1. Filtre la lista de permisos administrados por **Administrados por el cliente**, o bien busque el nombre del permiso administrado por el cliente que desea cambiar.

1. En la página de detalles de los permisos administrados, en la sección **Versiones de permisos administrados**, seleccione **Crear versión**.

1. En **Plantilla de política**, puede añadir o eliminar acciones y condiciones con el editor visual o el editor JSON.

   También puede elegir **Importar permiso administrado** para usar una plantilla de política existente.

1. Cuando haya terminado, elija **Crear versión** en la parte inferior de la página.

------
#### [ AWS CLI ]

**Para crear una nueva versión de un permiso administrado por el cliente**

1. Busque el nombre de recurso de Amazon (ARN) del permiso administrado del que desea crear una nueva versión. Para ello, llame al comando [list-permissions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permissions.html) con el parámetro `--permission-type CUSTOMER_MANAGED` para incluir únicamente los permisos administrados por el cliente.

   ```
   $ aws ram-cmp list-permissions --permission-type CUSTOMER_MANAGED
   {
       "permissions": [
           {
               "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP",
               "version": "2",
               "defaultVersion": true,
               "isResourceTypeDefault": false,
               "name": "TestCMP",
               "permissionType": "CUSTOMER_MANAGED",
               "resourceType": "imagebuilder:Component",
               "status": "ATTACHABLE",
               "creationTime": 1680035597.346,
               "lastUpdatedTime": 1680035597.346
           }
       ]
   }
   ```

1. Una vez que tenga el ARN, puede llamar a la [create-permission-version](https://docs.aws.amazon.com/cli/latest/reference/ram/create-permission-version.html)operación y proporcionar la plantilla de política actualizada.

   ```
   $ aws ram create-permission-version \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP \
       --policy-template {"Effect":"Allow","Action":["imagebuilder:ListComponents"]}
   {
       "permission": {
           "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP",
           "version": "2",
           "defaultVersion": true,
           "isResourceTypeDefault": false,
           "name": "TestCMP",
           "status": "ATTACHABLE",
           "resourceType": "imagebuilder:Component",
           "permission": "{\"Effect\":\"Allow\",\"Action\":[\"imagebuilder:ListComponents\"]}",
           "creationTime": 1680038973.79,
           "lastUpdatedTime": 1680038973.79
       }
   }
   ```

   El resultado incluye el número de versión de la nueva versión.

------

## Elegir una versión distinta para establecerla como versión predeterminada de un permiso administrado por el cliente
<a name="set_new_mp_default_version"></a>

Puede establecer otra versión de un permiso administrado por el cliente como nueva versión predeterminada. 

------
#### [ Console ]

**Para establecer una nueva versión predeterminada para un permiso administrado por el cliente**

1. Vaya a la **[Biblioteca de permisos administrados](https://console.aws.amazon.com/ram/home#Permissions:)**.

1. Filtre la lista de permisos administrados por **Administrados por el cliente**, o bien busque el nombre del permiso administrado por el cliente que desea cambiar.

1. 

   En la página de detalles del permiso administrado por el cliente, en la sección **Versiones del permiso administrado**, use la lista desplegable para elegir la versión que desea establecer como nueva versión predeterminada.

1. Elija **Establecer como versión predeterminada**.

1. Cuando aparezca el cuadro de diálogo, confirme que desea que esta versión sea la predeterminada para todos los nuevos recursos compartidos que utilicen este permiso administrado por el cliente. Si está de acuerdo, elija **Establecer como versión predeterminada**.

------
#### [ AWS CLI ]

**Para establecer una nueva versión predeterminada para un permiso administrado por el cliente**

1. Llame para buscar el número de versión que desea establecer como versión predeterminada. [list-permission-versions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permission-versions.html)

   El ejemplo siguiente recupera las versiones actuales del permiso administrado especificado.

   ```
   $ aws ram list-permission-versions \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP
   {
       "permissions": [
           {
               "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP",
               "version": "1",
               "defaultVersion": false,
               "isResourceTypeDefault": false,
               "name": "TestCMP",
               "permissionType": "CUSTOMER_MANAGED",
               "featureSet": "STANDARD",
               "resourceType": "imagebuilder:Component",
               "status": "UNATTACHABLE",
               "creationTime": 1680033769.401,
               "lastUpdatedTime": 1680035597.345
           },
           {
               "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP",
               "version": "2",
               "defaultVersion": true,
               "isResourceTypeDefault": false,
               "name": "TestCMP",
               "permissionType": "CUSTOMER_MANAGED",
               "featureSet": "STANDARD",
               "resourceType": "imagebuilder:Component",
               "status": "ATTACHABLE",
               "creationTime": 1680035597.346,
               "lastUpdatedTime": 1680035597.346
           }
       ]
   }
   ```

1. Una vez que tenga el número de versión que desee establecer como predeterminado, podrá llamar a la [set-default-permission-version](https://docs.aws.amazon.com/cli/latest/reference/ram/set-default-permission-version.html)operación.

   ```
   $ aws ram-cmp set-default-permission-version \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP \
       --version 2
   ```

   Si se ejecuta correctamente, este comando no devuelve ningún resultado. Puede [list-permission-versions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permission-versions.html)volver a ejecutar y comprobar que el `defaultVersion` campo de la versión elegida está ahora establecido en`true`.

------

## Eliminar una versión de un permiso administrado por el cliente
<a name="delete_mp_version"></a>

Puede tener hasta cinco versiones de cada permiso administrado por el cliente. Cuando ya no necesite una versión, y esta no se esté utilizando, puede eliminarla. No puede eliminar la versión predeterminada de un permiso administrado por el cliente. Las versiones eliminadas permanecen visibles en la consola durante un máximo de dos horas con el estado eliminado hasta que se eliminan por completo.

------
#### [ Console ]

 **Para eliminar una versión de un permiso administrado por el cliente**

1. Vaya a la **[Biblioteca de permisos administrados](https://console.aws.amazon.com/ram/home#Permissions:)**.

1. Filtre la lista de permisos administrados por **Administrados por el cliente**, o bien busque el nombre del permiso administrado por el cliente correspondiente a la versión que desea eliminar.

1. Asegúrese de que la versión que desea eliminar no es la versión predeterminada en ese momento.

1. En la sección **Versiones** de la página, elija la pestaña **Recursos compartidos asociados** para averiguar si algún recurso compartido usa esta versión.

   Si hay recursos compartidos asociados, debe cambiar la versión del permiso administrado por el cliente antes de poder eliminar esta versión.

1. Elija **Eliminar versión** en la parte derecha de la sección **Versión**.

1. En el cuadro de diálogo de confirmación, seleccione **Eliminar** para confirmar que desea eliminar esta versión del permiso administrado por el cliente.

   Si no desea eliminar esta versión del permiso administrado por el cliente, elija **Cancelar**.

------
#### [ AWS CLI ]

**Para eliminar una versión de un permiso administrado por el cliente**

1. Llame a la [list-permission-versions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permission-versions.html)operación para recuperar los números de versión disponibles.

1. Una vez que tenga el número de versión, indíquelo como parámetro para [delete-permission-version](https://docs.aws.amazon.com/cli/latest/reference/ram/delete-permission-version.html).

   ```
   $ aws ram-cmp delete-permission-version \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP \
       --version 1
   ```

   Si se ejecuta correctamente, este comando no devuelve ningún resultado. Puede [list-permission-versions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permission-versions.html)volver a ejecutar y comprobar que la versión ya no esté incluida en la salida.

------

## Eliminar un permiso administrado por el cliente
<a name="delete_mp"></a>

Si un permiso administrado por el cliente ya no es necesario y no está en uso, puede eliminarlo. No es posible eliminar un permiso administrado por el cliente que esté asociado a un recurso compartido. El permiso administrado por el cliente que se ha eliminado desaparece pasadas dos horas. Hasta entonces, permanece visible en la **Biblioteca de permisos administrados** con estado eliminado.

------
#### [ Console ]

 **Para eliminar un permiso administrado por el cliente**

1. Vaya a la **[Biblioteca de permisos administrados](https://console.aws.amazon.com/ram/home#Permissions:)**.

1. Filtre la lista de permisos administrados por el cliente por **Administrados por el cliente**, o bien busque el nombre del permiso administrado por el cliente que desea eliminar.

1. Confirme que hay 0 recursos compartidos asociados en la lista de permisos administrados antes de seleccionar el permiso administrado por el cliente.

   Si aún hay recursos compartidos asociados al permiso administrado, debe asignar otro permiso administrado a todos los recursos compartidos para poder continuar.

1. En la esquina superior derecha de la página de detalles del permiso administrado por el cliente, elija **Eliminar permiso administrado**.

1. Cuando aparezca el cuadro de diálogo de confirmación, elija **Eliminar** para eliminar el permiso administrado.

------
#### [ AWS CLI ]

**Para eliminar un permiso administrado por el cliente**

1. Busque el ARN del permiso administrado que desea eliminar. Para hacerlo, llame a [list-permissions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permissions.html) con el parámetro `--permission-type CUSTOMER_MANAGED` para que se incluyan solo los permisos administrados por el cliente.

   ```
   $ aws ram-cmp list-permissions --permission-type CUSTOMER_MANAGED
   {
       "permissions": [
           {
               "arn": "arn:aws:ram:us-east-1:123456789012:permission/TestCMP",
               "version": "2",
               "defaultVersion": true,
               "isResourceTypeDefault": false,
               "name": "TestCMP",
               "permissionType": "CUSTOMER_MANAGED",
               "resourceType": "imagebuilder:Component",
               "status": "ATTACHABLE",
               "creationTime": 1680035597.346,
               "lastUpdatedTime": 1680035597.346
           }
       ]
   }
   ```

1. [Una vez que disponga del ARN del permiso administrado que desea eliminar, indíquelo como parámetro en delete-permission](https://docs.aws.amazon.com/cli/latest/reference/ram/delete-permission.html).

   ```
   $ aws ram delete-permission \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/TestCMP
   {
       "returnValue": true,
       "permissionStatus": "DELETING"
   }
   ```

------