

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 una función de IAM para conceder permisos a las aplicaciones y scripts que se ejecutan en las instancias de streaming de aplicaciones WorkSpaces
<a name="using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances"></a>

Las aplicaciones y los scripts que se ejecutan en WorkSpaces las instancias de streaming de Applications deben incluir AWS credenciales en sus solicitudes de AWS API. Puede crear un rol de IAM para administrar estas credenciales. Un rol de IAM especifica un conjunto de permisos que puedes usar para acceder a AWS los recursos. Sin embargo, este rol no se asocia de manera exclusiva a una persona. En su lugar, puede asumirlo cualquier usuario que lo necesite.

Puede aplicar un rol de IAM a una instancia de streaming de WorkSpaces aplicaciones. Cuando la instancia de streaming cambia al rol (lo asume), el rol proporciona credenciales de seguridad temporales. La aplicación o los scripts utilizan estas credenciales para realizar acciones de API y tareas de administración en la instancia de streaming. WorkSpaces Applications gestiona el cambio de credenciales temporal por usted.

**Topics**
+ [Mejores prácticas para usar las funciones de IAM con WorkSpaces las instancias de streaming de aplicaciones](best-practices-for-using-iam-role-with-streaming-instances.md)
+ [Configuración de una función de IAM existente para usarla con WorkSpaces aplicaciones e instancias de streaming](configuring-existing-iam-role-to-use-with-streaming-instances.md)
+ [Cómo crear un rol de IAM para usarlo con WorkSpaces aplicaciones e instancias de streaming](how-to-create-iam-role-to-use-with-streaming-instances.md)
+ [Cómo utilizar el rol de IAM con WorkSpaces las instancias de streaming de aplicaciones](how-to-use-iam-role-with-streaming-instances.md)

# Mejores prácticas para usar las funciones de IAM con WorkSpaces las instancias de streaming de aplicaciones
<a name="best-practices-for-using-iam-role-with-streaming-instances"></a>

Cuando utilice funciones de IAM con instancias de streaming de WorkSpaces aplicaciones, le recomendamos que siga estas prácticas:
+ Limite los permisos que concede a las acciones y los recursos de la AWS API.

  Siga los principios de privilegios mínimos al crear y adjuntar políticas de IAM a las funciones de IAM asociadas a las instancias de streaming de WorkSpaces aplicaciones. Cuando utilices una aplicación o un script que requiera acceso a acciones o recursos de la AWS API, determina las acciones y los recursos específicos que se requieren. A continuación, cree políticas que permitan a la aplicación o al script realizar únicamente tales acciones. Para obtener más información, consulte [Concesión de mínimos privilegios](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) en la *Guía del usuario de IAM*.
+ Cree una función de IAM para cada recurso de WorkSpaces aplicaciones.

  La creación de una función de IAM única para cada recurso de WorkSpaces aplicaciones es una práctica que sigue los principios de privilegios mínimos. Esto también le permite modificar los permisos de un recurso sin que ello afecte a otros recursos.
+ Límite dónde se pueden utilizar las credenciales.

  Las políticas de IAM le permiten definir las condiciones en las que el rol de IAM se puede utilizar para acceder a un recurso. Por ejemplo, puede incluir condiciones para especificar un rango de direcciones IP desde el que pueden proceder las solicitudes. Esto impide que las credenciales se utilicen fuera de su entorno. Para obtener más información, consulte [Utilizar condiciones de política para mayor seguridad](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#use-policy-conditions) en la *Guía del usuario de IAM*.

# Configuración de una función de IAM existente para usarla con WorkSpaces aplicaciones e instancias de streaming
<a name="configuring-existing-iam-role-to-use-with-streaming-instances"></a>

En este tema, se describe cómo configurar un rol de IAM existente para utilizarlo con constructores de imágenes e instancias de streaming de flota.

**Requisitos previos**

El rol de IAM que desee utilizar con un generador de imágenes de WorkSpaces aplicaciones o una instancia de streaming de flotas debe cumplir los siguientes requisitos previos:
+ La función de IAM debe estar en la misma cuenta de Amazon Web Services que la instancia de streaming de WorkSpaces Applications.
+ El rol de IAM no puede ser un rol de servicio.
+ La política de relaciones de confianza asociada a la función de IAM debe incluir el servicio de WorkSpaces Aplicaciones como principal. Un *principal* es una entidad AWS que puede realizar acciones y acceder a los recursos. La política también debe incluir la acción `sts:AssumeRole`. Esta configuración de política define a WorkSpaces las aplicaciones como una entidad de confianza.

  
+ Si va a aplicar la función de IAM a un generador de imágenes, el creador de imágenes debe ejecutar una versión del agente de WorkSpaces aplicaciones publicada a partir del 3 de septiembre de 2019. Si va a aplicar el rol de IAM a una flota, esta debe utilizar una imagen que utilice una versión del agente publicada en la misma fecha o con posterioridad. Para obtener más información, consulte [WorkSpaces Notas de lanzamiento de Applications Agent](agent-software-versions.md). 

**Para permitir que el director del servicio de WorkSpaces aplicaciones asuma una función de IAM existente**

Para realizar los siguientes pasos, debe iniciar sesión en la cuenta como un usuario de IAM que tenga los permisos necesarios para enumerar y actualizar los roles de IAM. Si no tiene los permisos necesarios, pida al administrador de su cuenta de Amazon Web Services que realice estos pasos en su cuenta o que le conceda los permisos requeridos.

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

1. Seleccione **Roles** en el panel de navegación. 

1. En la lista de roles de su cuenta, elija el nombre del rol que desee modificar.

1. Elija la pestaña **Relaciones de confianza** y, a continuación, **Editar relación de confianza**.

1. En **Policy Document (Documento de política)**, compruebe que la política de relación de confianza incluya la acción `sts:AssumeRole` para la entidad principal del servicio `appstream.amazonaws.com`:

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": [
             "appstream.amazonaws.com"
           ]
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1. Cuando haya terminado de editar la política de confianza, elija **Update Trust Policy (Actualizar política de confianza)** para guardar los cambios. 

1. La función de IAM que haya seleccionado se mostrará en la consola de WorkSpaces aplicaciones. Este rol concede permisos a las aplicaciones y los scripts para realizar acciones de la API y tareas de administración en las instancias de streaming.

# Cómo crear un rol de IAM para usarlo con WorkSpaces aplicaciones e instancias de streaming
<a name="how-to-create-iam-role-to-use-with-streaming-instances"></a>

En este tema, se describe cómo crear un rol de IAM existente para utilizarlo con constructores de imágenes e instancias de streaming de flota.

1. 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, seleccione **Roles** y luego seleccione **Crear rol**.

1. En **Seleccionar el tipo de entidad de confianza**, elija **Servicio de AWS **.

1. En la lista de AWS servicios, elija **WorkSpaces Aplicaciones.**

1. En **Seleccione su caso de uso**, ya está seleccionada la opción **WorkSpaces WorkSpaces Aplicaciones: permite que las instancias de aplicaciones llamen a AWS los servicios en su nombre**. Elija **Siguiente: permisos**.

1. Si es posible, seleccione la política que desea utilizar para la política de permisos o elija **Create policy (Crear política)** para abrir una pestaña nueva del navegador y crear una política nueva desde cero. Para obtener más información, consulte el paso 4 del procedimiento [Crear políticas de IAM (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) en la *Guía del usuario de IAM*.

   Después de crear la política, cierre esa pestaña y vuelva a la pestaña original. Seleccione la casilla de verificación situada junto a las políticas de permisos que desee que tengan WorkSpaces las aplicaciones.

1. (Opcional) Configure un límite de permisos. Se trata de una característica avanzada que está disponible para los roles de servicio, pero no para los roles vinculados a servicios. Para obtener más información, consulte [Límites de permisos para las entidades de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) en la *Guía del usuario de IAM*.

1. Elija **Siguiente: etiquetas**. Opcionalmente, puede asociar etiquetas como pares de clave-valor. Para obtener más información, consulte [Etiquetado de usuarios y roles de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) en la *Guía del usuario de IAM*.

1. Elija **Siguiente: Revisar**.

1. En **Nombre de rol**, escriba un nombre de rol único en su cuenta de Amazon Web Services. Como otros AWS recursos pueden hacer referencia al rol, no puede editar el nombre del rol una vez creado.

1. En **Role description (Descripción del rol)**, conserve la descripción del rol predeterminada o escriba una nueva.

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

# Cómo utilizar el rol de IAM con WorkSpaces las instancias de streaming de aplicaciones
<a name="how-to-use-iam-role-with-streaming-instances"></a>

Después de crear un rol de IAM, puede aplicarlo en un constructor de imágenes o una instancia de streaming de flota al lanzar el constructor de imágenes o crear una flota. También puede aplicar un rol de IAM en las flotas existentes. Para obtener información acerca de cómo aplicar un rol de IAM al lanzar un constructor de imágenes, consulte [Lanzar un generador de imágenes para instalar y configurar aplicaciones de streaming](tutorial-image-builder-create.md). Para obtener información acerca de cómo aplicar un rol de IAM al crear una flota, consulte [Cree una flota en Amazon WorkSpaces Applications](set-up-stacks-fleets-create.md).

Cuando aplicas una función de IAM a tu instancia de streaming de flota o generador de imágenes, WorkSpaces Applications recupera las credenciales temporales y crea el perfil de credenciales **appstream\$1machine\$1role** en la instancia. Las credenciales temporales son válidas durante 1 hora y las nuevas credenciales se recuperan cada hora. Las credenciales anteriores no vencen, por lo que puede utilizarlas mientras sean válidas. Puede usar el perfil de credenciales para llamar a AWS los servicios mediante programación mediante la interfaz de línea de AWS comandos (AWS CLI), AWS las herramientas o el AWS SDK con el idioma que prefiera. PowerShell

Cuando realice llamadas a la API, especifique **appstream\$1machine\$1role** como el perfil de credenciales. De lo contrario, la operación falla debido a los permisos insuficientes.

WorkSpaces Las aplicaciones asumen la función especificada mientras se aprovisiona la instancia de streaming. Como WorkSpaces Applications usa la interfaz de red elástica que está conectada a la VPC para las llamadas a la AWS API, la aplicación o el script deben esperar a que la interfaz de red elástica esté disponible antes de realizar las llamadas a la AWS API. Si las llamadas a la API se realizan antes de que la interfaz de red elástica esté disponible, las llamadas fallan.

En los siguientes ejemplos, se muestra cómo puede utilizar el perfil de credenciales** appstream\$1machine\$1role** para describir las instancias de streaming (instancias EC2) y crear el cliente de Boto. Boto es el SDK de Amazon Web Services (AWS) para Python. 

**Describa las instancias de streaming (instancias EC2) mediante la CLI AWS **

```
aws ec2 describe-instances --region us-east-1 --profile appstream_machine_role
```

**Describa las instancias de streaming (instancias EC2) mediante herramientas para AWS PowerShell**

Debe usar AWS Tools para la PowerShell versión 3.3.563.1 o posterior, con el Amazon Web Services SDK para .NET versión 3.3.103.22 o posterior. Puede descargar el instalador de AWS Herramientas para Windows, que incluye AWS Herramientas para PowerShell y el SDK de Amazon Web Services para .NET, desde el PowerShell sitio web [AWS Herramientas para](https://aws.amazon.com/powershell/).

```
Get-EC2Instance -Region us-east-1 -ProfileName appstream_machine_role
```

**Creación del cliente Boto mediante el AWS SDK para Python**

```
session = boto3.Session(profile_name='appstream_machine_role')
```