

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.

# Identidad y gestión de acceso para Amazon Managed Service para Apache Flink
<a name="security-iam"></a>





AWS Identity and Access Management (IAM) es una herramienta Servicio de AWS que ayuda al administrador a controlar de forma segura el acceso a los recursos. AWS Los administradores de IAM controlan quién está *autenticado* (ha iniciado sesión) y *autorizado* (tiene permisos) para utilizar recursos de Managed Service para Apache Flink. La IAM es una Servicio de AWS herramienta que puede utilizar sin coste adicional.

**Topics**
+ [Público](#security_iam_audience)
+ [Autenticación con identidades](#security_iam_authentication)
+ [Administración del acceso con políticas](#security_iam_access-manage)
+ [Cómo funciona Amazon Managed Service para Apache Flink con IAM](security_iam_service-with-iam.md)
+ [Ejemplos de políticas basadas en identidades de Amazon Managed Service para Apache Flink](security_iam_id-based-policy-examples.md)
+ [Solución de problemas de identidad y acceso de Amazon Managed Service para Apache Flink](security_iam_troubleshoot.md)
+ [Prevención de la sustitución confusa entre servicios](iam-cross-service-confused-deputy-prevention.md)

## Público
<a name="security_iam_audience"></a>

La forma de usar AWS Identity and Access Management (IAM) varía según la función que desempeñes:
+ **Usuario del servicio:** solicite permisos al administrador si no puede acceder a las características (consulte [Solución de problemas de identidad y acceso de Amazon Managed Service para Apache Flink](security_iam_troubleshoot.md)).
+ **Administrador del servicio:** determine el acceso de los usuarios y envíe las solicitudes de permiso (consulte [Cómo funciona Amazon Managed Service para Apache Flink con IAM](security_iam_service-with-iam.md)).
+ **Administrador de IAM**: escribe las políticas para administrar el acceso (consulte [Ejemplos de políticas basadas en identidades de Amazon Managed Service para Apache Flink](security_iam_id-based-policy-examples.md)).

## Autenticación con identidades
<a name="security_iam_authentication"></a>

La autenticación es la forma en que inicias sesión AWS con tus credenciales de identidad. Debe autenticarse como usuario de Usuario raíz de la cuenta de AWS IAM o asumir una función de IAM.

Puede iniciar sesión como una identidad federada con las credenciales de una fuente de identidad, como AWS IAM Identity Center (IAM Identity Center), la autenticación de inicio de sesión único o las credenciales. Google/Facebook Para obtener más información sobre el inicio de sesión, consulte [Cómo iniciar sesión en la Cuenta de AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) en la *Guía del usuario de AWS Sign-In *.

Para el acceso programático, AWS proporciona un SDK y una CLI para firmar criptográficamente las solicitudes. Para obtener más información, consulte [AWS Signature Version 4 para solicitudes de API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) en la *Guía del usuario de IAM*.

### Cuenta de AWS usuario root
<a name="security_iam_authentication-rootuser"></a>

 Al crear un Cuenta de AWS, se comienza con una identidad de inicio de sesión denominada *usuario Cuenta de AWS raíz* que tiene acceso completo a todos Servicios de AWS los recursos. Se recomiendaencarecidamente que no utilice el usuario raíz para las tareas diarias. Para ver las tareas que requieren credenciales de usuario raíz, consulte [Tareas que requieren credenciales de usuario raíz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) en la *Guía del usuario de IAM*. 

### Identidad federada
<a name="security_iam_authentication-federated"></a>

Como práctica recomendada, exija a los usuarios humanos que utilicen la federación con un proveedor de identidades para acceder Servicios de AWS mediante credenciales temporales.

Una *identidad federada* es un usuario del directorio empresarial, del proveedor de identidades web o al Directory Service que se accede Servicios de AWS mediante credenciales de una fuente de identidad. Las identidades federadas asumen roles que proporcionan credenciales temporales.

Para una administración de acceso centralizada, se recomienda AWS IAM Identity Center. Para obtener más información, consulte [¿Qué es el Centro de identidades de IAM?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) en la *Guía del usuario de AWS IAM Identity Center *.

### Usuarios y grupos de IAM
<a name="security_iam_authentication-iamuser"></a>

Un *[usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* es una identidad con permisos específicos para una sola persona o aplicación. Recomendamos el uso de credenciales temporales en lugar de usuarios de IAM con credenciales de larga duración. Para obtener más información, consulte [Exigir a los usuarios humanos que utilicen la federación con un proveedor de identidad para acceder AWS mediante credenciales temporales](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) en la Guía del usuario de *IAM*.

Un [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) especifica un conjunto de usuarios de IAM y facilita la administración de los permisos para grupos grandes de usuarios. Para obtener más información, consulte [Casos de uso para usuarios de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) en la *Guía del usuario de IAM*.

### Roles de IAM
<a name="security_iam_authentication-iamrole"></a>

Un *[Rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* es una identidad con permisos específicos que proporciona credenciales temporales. Puede asumir un rol [cambiando de un rol de usuario a uno de IAM (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) o llamando a una AWS CLI operación de AWS API. Para obtener más información, consulte [Métodos para asumir un rol](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) en la *Guía del usuario de IAM*.

Los roles de IAM son útiles para el acceso de usuario federado, los permisos de usuario de IAM temporales, el acceso entre cuentas, el acceso entre servicios y las aplicaciones que se ejecutan en Amazon EC2. Para obtener más información, consulte [Acceso a recursos entre cuentas en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) en la *Guía del usuario de IAM*.

## Administración del acceso con políticas
<a name="security_iam_access-manage"></a>

 AWS Para controlar el acceso, puede crear políticas y adjuntarlas a AWS identidades o recursos. Una política define los permisos cuando están asociados a una identidad o un recurso. AWS evalúa estas políticas cuando un director hace una solicitud. La mayoría de las políticas se almacenan AWS como documentos JSON. Para obtener más información sobre los documentos de políticas de JSON, consulte [Información general de políticas de JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) en la *Guía del usuario de IAM*.

Mediante las políticas, los administradores especifican quién tiene acceso a qué, definiendo qué **entidad principal** puede realizar **acciones** sobre qué **recursos** y en qué **condiciones**.

De forma predeterminada, los usuarios y los roles no tienen permisos. Un administrador de IAM crea políticas de IAM y las agrega a roles, que los usuarios pueden asumir posteriormente. Las políticas de IAM definen permisos independientemente del método que se utilice para realizar la operación.

### Políticas basadas en identidades
<a name="security_iam_access-manage-id-based-policies"></a>

Las políticas basadas en identidad son documentos de política de permisos JSON que asocia a una identidad (usuario, grupo o rol). Estas políticas controlan qué acciones pueden realizar las identidades, en qué recursos y en qué condiciones. Para obtener más información sobre cómo crear una política basada en la identidad, consulte [Definición de permisos de IAM personalizados con políticas administradas por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la *Guía del usuario de IAM*.

Las políticas basadas en identidad pueden ser *políticas insertadas* (incrustadas directamente en una sola identidad) o *políticas administradas* (políticas independientes asociadas a varias identidades). Para obtener información sobre cómo elegir entre políticas administradas e insertadas, consulte [Selección entre políticas administradas y políticas insertadas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) en la *Guía del usuario de IAM*.

### Políticas basadas en recursos
<a name="security_iam_access-manage-resource-based-policies"></a>

Las políticas basadas en recursos son documentos de políticas JSON que se asocian a un recurso. Los ejemplos incluyen las *Políticas de confianza de roles* de IAM y las *Políticas de bucket* de Amazon S3. En los servicios que admiten políticas basadas en recursos, los administradores de servicios pueden utilizarlos para controlar el acceso a un recurso específico. Debe [especificar una entidad principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) en una política basada en recursos.

Las políticas basadas en recursos son políticas insertadas que se encuentran en ese servicio. No puedes usar políticas AWS gestionadas de IAM en una política basada en recursos.

### Otros tipos de políticas
<a name="security_iam_access-manage-other-policies"></a>

AWS admite tipos de políticas adicionales que pueden establecer los permisos máximos que conceden los tipos de políticas más comunes:
+ **Límites de permisos:** establecen los permisos máximos que una política basada en identidad puede conceder a una entidad de IAM. 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*.
+ **Políticas de control de servicios (SCPs)**: especifican los permisos máximos para una organización o unidad organizativa en AWS Organizations. Para obtener más información, consulte [Políticas de control de servicios](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) en la *Guía del usuario de AWS Organizations *.
+ **Políticas de control de recursos (RCPs)**: establece los permisos máximos disponibles para los recursos de tus cuentas. Para obtener más información, consulte [Políticas de control de recursos (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) en la *Guía del AWS Organizations usuario*.
+ **Políticas de sesión:** políticas avanzadas que se pasan como parámetro cuando se crea una sesión temporal para un rol o un usuario federado. Para obtener más información, consulte [Políticas de sesión](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) en la *Guía del usuario de IAM*.

### Varios tipos de políticas
<a name="security_iam_access-manage-multiple-policies"></a>

Cuando se aplican varios tipos de políticas a una solicitud, los permisos resultantes son más complicados de entender. Para saber cómo se AWS determina si se debe permitir una solicitud cuando se trata de varios tipos de políticas, consulte la [lógica de evaluación de políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) en la *Guía del usuario de IAM*.

# Cómo funciona Amazon Managed Service para Apache Flink con IAM
<a name="security_iam_service-with-iam"></a>





En Amazon MSF, se utiliza IAM en los siguientes contextos diferentes:
+ [Permisos de la aplicación](#security_iam_application_permissions): controle el acceso de la aplicación a recursos externos, como Amazon S3, Amazon Kinesis Data Streams o Amazon DynamoDB, que utilizan la autenticación de IAM.
+ [Permisos de administración de aplicaciones y control del ciclo](#security_iam_application_management) de vida: controle el uso de las acciones de la API de Amazon MSF [CreateApplication](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html), como, y [StartApplication[UpdateApplication](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html)](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_StartApplication.html), que controlan el ciclo de vida de la aplicación. Para obtener una lista completa de todas las acciones de la API de Amazon MSF que puede especificar en el `Action` elemento de una declaración de política de IAM, consulte [Acciones definidas por Amazon Kinesis Analytics](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkinesisanalyticsv2.html#amazonkinesisanalyticsv2-actions-as-permissions) V2 en *la* Referencia de autorización de servicios.

**Topics**
+ [Permisos de aplicación](#security_iam_application_permissions)
+ [Control de recursos y administración del ciclo de vida de la aplicación](#security_iam_application_management)
+ [Políticas basadas en identidad para los servicios gestionados de Amazon Flink](#security_iam_service-with-iam-id-based-policies)
+ [Políticas basadas en recursos dentro de Managed Service para Apache Flink](#security_iam_service-with-iam-resource-based-policies)
+ [Listas de control de acceso (ACLs) en Managed Service for Apache Flink](#security_iam_service-with-iam-acls)
+ [Roles de servicio para Managed Service para Apache Flink](#security_iam_service-with-iam-roles-service)
+ [Roles vinculados a servicios para Managed Service para Apache Flink](#security_iam_service-with-iam-roles-service-linked)

## Permisos de aplicación
<a name="security_iam_application_permissions"></a>

Usted controla los permisos de IAM de una aplicación de Amazon MSF con la función de IAM asignada a la aplicación, como parte de la configuración de la aplicación. Esta función de IAM determina los permisos de la aplicación para acceder a otros servicios, como Amazon S3, Kinesis Data Streams o DynamoDB, que utilizan IAM como autorización.

**aviso**  
Es posible que cambiar los permisos de un rol de servicio interrumpa la funcionalidad de Amazon MSF. Asegúrese de no eliminar los permisos de la aplicación para descargar el código de la aplicación del bucket de Amazon S3 y enviar registros a Amazon CloudWatch.

No se admite la asignación de permisos a la aplicación mediante [políticas basadas en recursos](#security_iam_service-with-iam-resource-based-policies). No puede especificar una aplicación de Amazon MSF como principal en una política adjunta al recurso al que se va a acceder.

**Topics**
+ [Permisos para acceder al código de la aplicación y a los registros de la aplicación](#security_iam_permissions_access_application_code)
+ [Prevención de la sustitución confusa entre servicios](#security_iam_cross_service_confused_deputy)

### Permisos para acceder al código de la aplicación y a los registros de la aplicación
<a name="security_iam_permissions_access_application_code"></a>

Amazon MSF también utiliza la función de IAM de la aplicación para acceder al código de la aplicación cargado en un bucket de Amazon S3 y para escribir los registros de la aplicación en Amazon CloudWatch Logs.

Al crear o actualizar la aplicación mediante la Consola de administración de AWS**función Crear o actualizar IAM con las políticas requeridas** <role-name>en la configuración de la aplicación, Amazon MSF crea y modifica automáticamente la función de IAM y asigna los permisos necesarios a Amazon S3 y Logs. CloudWatch 

Si crea la función de IAM manualmente o si crea y administra la aplicación mediante herramientas de automatización, debe añadir los siguientes permisos a la función de IAM de la aplicación.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ReadCode",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/path-to-application-code"
            ]
        },
        {
            "Sid": "ListCloudwatchLogGroups",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:123456789012:log-group:*"
            ]
        },
        {
            "Sid": "ListCloudwatchLogStreams",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogStreams"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:123456789012:log-group:/aws/kinesis-analytics/application-name:log-stream:*"
            ]
        },
        {
            "Sid": "PutCloudwatchLogs",
            "Effect": "Allow",
            "Action": [
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:123456789012:log-group:/aws/kinesis-analytics/application-name:log-stream:kinesis-analytics-log-stream"
            ]
        }
    ]
}
```

------

### Prevención de la sustitución confusa entre servicios
<a name="security_iam_cross_service_confused_deputy"></a>

Cuando una aplicación de Amazon MSF llama a otra Servicio de AWS, puede proporcionar permisos de acceso más detallados. Por ejemplo, si una función de IAM se reutiliza en varias aplicaciones, una aplicación puede acceder a un recurso al que no debería tener acceso. Esto se conoce como el problema del [diputado confuso](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html). Para obtener información sobre cómo el recurso al que se ha accedido puede restringir el acceso a una aplicación específica de Amazon MSF, consulte[Prevención de la sustitución confusa entre servicios](iam-cross-service-confused-deputy-prevention.md).

## Control de recursos y administración del ciclo de vida de la aplicación
<a name="security_iam_application_management"></a>

Las acciones para administrar la aplicación y su ciclo de vida, como [CreateApplication](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html), y [StartApplication[UpdateApplication](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html)](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_StartApplication.html), se controlan mediante políticas basadas en la identidad asociadas al recurso que realiza la acción, como un usuario de IAM, un grupo de IAM o un recurso, como llamar a AWS Lambda la API de Amazon MSF.

**nota**  
La API y el SDK que controlan el ciclo de vida de las aplicaciones de Amazon MSF se denominan Amazon Kinesis Analytics V2 por motivos de compatibilidad con versiones anteriores.

No se admite la asignación de permisos para las acciones del ciclo de vida de las aplicaciones mediante políticas basadas en recursos adjuntas a la aplicación Amazon MSF. El rol de IAM de la aplicación no se utiliza para controlar el acceso a las acciones del ciclo de vida de la aplicación. No debe añadir permisos de ciclo de vida de la aplicación al rol de la aplicación.

En la siguiente tabla se enumeran las características de IAM que puede utilizar con las acciones del ciclo de vida de las aplicaciones de Amazon MSF.


| Característica de IAM | Soporte de Managed Service para Apache Flink | 
| --- | --- | 
|  [Políticas basadas en identidades](#security_iam_service-with-iam-id-based-policies)  |   Sí  | 
|  [Políticas basadas en recursos](#security_iam_service-with-iam-resource-based-policies)  |  No  | 
|  [Acciones de políticas](#security_iam_service-with-iam-id-based-policies-actions)  |   Sí  | 
|  [Recursos de políticas](#security_iam_service-with-iam-id-based-policies-resources)  |   Sí  | 
|  [Claves de condición de política](#security_iam_service-with-iam-id-based-policies-conditionkeys)  |  Sí  | 
|  [ACLs](#security_iam_service-with-iam-acls)  |  No  | 
|  [ABAC (etiquetas en políticas)](#security_iam_service-with-iam-tags)  |   Sí  | 
|  [Credenciales temporales](#security_iam_service-with-iam-roles-tempcreds)  |   Sí  | 
|  [Permisos de entidades principales entre servicios](#security_iam_service-with-iam-principal-permissions)  |   Sí  | 
|  [Roles de servicio](#security_iam_service-with-iam-roles-service)  |  No  | 
|  [Roles vinculados al servicio](#security_iam_service-with-iam-roles-service-linked)  |  No  | 
+ *Para obtener una visión general de cómo funcionan Managed Service for Apache Flink y otros con la mayoría de las funciones de IAM, consulte Cómo Servicios de AWS trabajar con IAM en la Guía del [Servicios de AWS usuario](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) de IAM.*
+ Para obtener más información sobre las claves de contexto de condición, acciones y recursos de las API directas de EBS para su uso en las políticas de permisos de IAM, consulte[Acciones, recursos y claves de condición para Amazon Kinesis Analytics V2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkinesisanalyticsv2.html) en la *Referencia de autorizaciones de servicio*.

**Topics**
+ [Acciones de políticas](#security_iam_service-with-iam-id-based-policies-actions)
+ [Recursos de políticas](#security_iam_service-with-iam-id-based-policies-resources)
+ [Claves de condición de políticas](#security_iam_service-with-iam-id-based-policies-conditionkeys)
+ [ABAC](#security_iam_service-with-iam-tags)
+ [Credenciales temporales](#security_iam_service-with-iam-roles-tempcreds)
+ [Permisos de entidades principales](#security_iam_service-with-iam-principal-permissions)

### Acciones de política de ciclo de vida de aplicación
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

**Compatibilidad con las acciones de políticas:** sí

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **entidad principal** puede realizar **acciones** en qué **recursos** y en qué **condiciones**.

El elemento `Action` de una política JSON describe las acciones que puede utilizar para conceder o denegar el acceso en una política. Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.

Las acciones de políticas de Amazon Q utilizan el siguiente prefijo antes de la acción: `kinesisanalytics`. Amazon MSF APIs y SDKs usa el `Amazon Kinesis Analytics V2` prefijo.

Para especificar varias acciones en una única instrucción, sepárelas con comas. En el siguiente ejemplo se muestra la sintaxis para especificar las acciones políticas de Amazon MSF.

```
"Action" : [
   "kinesisanalytics:action1",
   "kinesisanalytics:action2"
]
```

También puede utilizar caracteres comodín para especificar varias acciones (\$1). Por ejemplo, para especificar todas las acciones que comiencen con la palabra `Describe`, incluya la siguiente acción.

```
"Action": "kinesisanalytics:Describe*"
```

Para ver una lista completa de todas las acciones de la API de Amazon MSF que puede especificar en el `Action` elemento de una declaración de política de IAM, consulte [Acciones definidas por Amazon Kinesis](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkinesisanalyticsv2.html#amazonkinesisanalyticsv2-actions-as-permissions) Analytics V2.

Para ver ejemplos de políticas basadas en identidad de Amazon MSF, consulte [Ejemplos de políticas basadas en identidades](security_iam_id-based-policy-examples.md).

### Recursos de políticas de ciclo de vida de aplicación
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

**Compatibilidad con los recursos de políticas:** sí

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **entidad principal** puede realizar **acciones** en qué **recursos** y en qué **condiciones**.

El elemento `Resource` de la política JSON especifica el objeto u objetos a los que se aplica la acción. Como práctica recomendada, especifique un recurso utilizando el [Nombre de recurso de Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). En el caso de las acciones que no admiten permisos por recurso, utilice un carácter comodín (\$1) para indicar que la instrucción se aplica a todos los recursos.

```
"Resource": "*"
```

Los permisos para las acciones del ciclo de vida de las aplicaciones de Amazon MSF se definen para **cada aplicación**. El elemento `Resource` JSON de una política de IAM define la aplicación Amazon MSF a la que se aplican los permisos.

Se puede asignar permisos a una sola aplicación especificando el ARN de la aplicación o a un grupo de aplicaciones mediante caracteres comodín. En el ejemplo siguiente se muestra la sintaxis del campo `Resource`.

```
"Resouce" : "arn:partition:kinesisanalytics:Region:account:application/application-name
```

También puede asignar permisos para controlar un subconjunto de aplicaciones mediante caracteres comodín. Por ejemplo, puede asignar permisos para controlar todas las aplicaciones cuyo nombre comience con un prefijo concreto.

```
"Resouce" : "arn:partition:kinesisanalytics:Region:account:application/application-name-prefix*
```

### Claves de condición del ciclo de vida de la aplicación
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

**Compatibilidad con claves de condición de políticas específicas del servicio:** sí

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **entidad principal** puede realizar **acciones** en qué **recursos** y en qué **condiciones**.

El elemento `Condition` especifica cuándo se ejecutan las instrucciones en función de criterios definidos. Puede crear expresiones condicionales que utilizan [operadores de condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), tales como igual o menor que, para que la condición de la política coincida con los valores de la solicitud. Para ver todas las claves de condición AWS globales, consulte las claves de [contexto de condición AWS globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) en la *Guía del usuario de IAM*.

Se puede utilizar claves de condición para controlar los permisos de las acciones del ciclo de vida de las aplicaciones de Amazon MSF. Para obtener una lista de las claves de condición de Managed Service para Apache Flink, consulte [Condition Keys for Amazon Managed Service para Apache Flink](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awskinesisanalytics.html#awskinesisanalytics-policy-keys) en la *Referencia de autorizaciones de servicio*. Para obtener más información acerca de las acciones y los recursos con los que puede utilizar una clave de condición, consulte [acciones definidas por Amazon Managed Service para Apache Flink](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awskinesisanalytics.html#awskinesisanalytics-actions-as-permissions).

### Control de acceso basado en atributos (ABAC) con Managed Service para Apache Flink
<a name="security_iam_service-with-iam-tags"></a>

**Admite ABAC (etiquetas en las políticas):** sí

El control de acceso basado en atributos (ABAC) es una estrategia de autorización que define permisos en función de atributos. En AWS, estos atributos se denominan *etiquetas*. Puede adjuntar etiquetas a las entidades de IAM (usuarios o roles) y a muchos AWS recursos. El etiquetado de entidades y recursos es el primer paso de ABAC. A continuación, designa las políticas de ABAC para permitir operaciones cuando la etiqueta de la entidad principal coincida con la etiqueta del recurso al que se intenta acceder.

ABAC es útil en entornos que crecen con rapidez y ayuda en situaciones en las que la administración de las políticas resulta engorrosa.

Para controlar el acceso en función de etiquetas, debe proporcionar información de las etiquetas en el [elemento de condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) de una política utilizando las claves de condición `aws:ResourceTag/key-name`, `aws:RequestTag/key-name` o `aws:TagKeys`. Si un servicio admite las tres claves de condición para cada tipo de recurso, el valor es **Sí** para el servicio. Si un servicio admite las tres claves de condición solo para algunos tipos de recursos, el valor es **Parcial**. 
+ Para obtener más información sobre cómo definir atributos, consulte [Definición de permisos en función de los atributos con la autorización de ABAC](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html).
+ Para ver un tutorial con los pasos para configurar ABAC, consulte el [tutorial de IAM: Defina los permisos de acceso a los AWS recursos en función](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html) de las etiquetas.

### Uso de credenciales temporales
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

**Compatibilidad con credenciales temporales:** sí

Las acciones del ciclo de vida de las aplicaciones de Amazon MSF admiten credenciales temporales.

Estás usando credenciales temporales si inicias sesión en ellas Consola de administración de AWS con cualquier método excepto un nombre de usuario y una contraseña. Por ejemplo, cuando accedes AWS mediante el enlace de inicio de sesión único (SSO) de tu empresa, ese proceso crea automáticamente credenciales temporales. También crea credenciales temporales de forma automática cuando inicia sesión en la consola como usuario y luego cambia de rol. Para obtener más información sobre el cambio de roles, consulte [Cambio de un usuario a un rol de IAM (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html).

Puedes crear credenciales temporales manualmente mediante la AWS CLI API o. AWS A continuación, puede usar las credenciales temporales para acceder a AWS. Se recomienda generar credenciales temporales de forma dinámica en lugar de utilizar claves de acceso a largo plazo. Para obtener más información, consulte [Credenciales de seguridad temporales en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html).

### Permisos de entidades principales entre servicios
<a name="security_iam_service-with-iam-principal-permissions"></a>

**Admite sesiones de acceso directo (FAS):** sí

Las acciones del ciclo de vida de las aplicaciones de Amazon MSF admiten permisos principales entre servicios.

Cuando utilizas un usuario o un rol de IAM para realizar acciones en AWSél, se te considera director. Cuando utiliza algunos servicios, es posible que realice una acción que desencadene otra acción en un servicio diferente. Las sesiones de acceso directo (FAS) utilizan los permisos del principal que llama y los que solicitan Servicio de AWS para realizar solicitudes a los servicios descendentes. Servicio de AWS Las solicitudes de FAS solo se realizan cuando un servicio recibe una solicitud que requiere interacciones con otros Servicios de AWS recursos para completarse. En este caso, debe tener permisos para realizar ambas acciones. Para obtener información sobre las políticas a la hora de realizar solicitudes de FAS, consulte [Reenviar sesiones de acceso](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html).

## Políticas basadas en identidad para los servicios gestionados de Amazon Flink
<a name="security_iam_service-with-iam-id-based-policies"></a>

**Compatibilidad con las políticas basadas en identidad:** sí

Las políticas basadas en identidad son documentos de políticas de permisos JSON que puede asociar a una identidad, como un usuario de IAM, un grupo de usuarios o un rol. Estas políticas controlan qué acciones pueden realizar los usuarios y los roles, en qué recursos y en qué condiciones. Para obtener más información sobre cómo crear una política basada en la identidad, consulte [Definición de permisos de IAM personalizados con políticas administradas por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la *Guía del usuario de IAM*.

Con las políticas basadas en identidades de IAM, puede especificar las acciones y los recursos permitidos o denegados, así como las condiciones en las que se permiten o deniegan las acciones. Para obtener más información sobre los elementos que puede utilizar en una política de JSON, consulte [Referencia de los elementos de la política de JSON de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) en la *Guía del usuario de IAM*.

### Ejemplos de políticas basadas en identidades de Managed Service para Apache Flink
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Para consultar ejemplos de políticas basadas en la identidad de Managed Service para Apache Flink, consulte [Ejemplos de políticas basadas en identidades de Amazon Managed Service para Apache Flink](security_iam_id-based-policy-examples.md).

## Políticas basadas en recursos dentro de Managed Service para Apache Flink
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Amazon Managed Service para Apache Flink actualmente no admite el control de acceso basado en recursos.

## Listas de control de acceso (ACLs) en Managed Service for Apache Flink
<a name="security_iam_service-with-iam-acls"></a>

**Soporta ACLs: No** 

Las listas de control de acceso (ACLs) controlan qué directores (miembros de la cuenta, usuarios o roles) tienen permisos para acceder a un recurso. ACLs son similares a las políticas basadas en recursos, aunque no utilizan el formato de documento de políticas JSON.

## Roles de servicio para Managed Service para Apache Flink
<a name="security_iam_service-with-iam-roles-service"></a>

**Compatible con roles de servicio:** sí

 Un rol de servicio es un [rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) que asume un servicio para realizar acciones en su nombre. Un administrador de IAM puede crear, modificar y eliminar un rol de servicio desde IAM. Para obtener más información, consulte [Crear un rol para delegar permisos a un Servicio de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) en la *Guía del usuario de IAM*. 

**aviso**  
Cambiar los permisos de un rol de servicio podría interrumpir la funcionalidad de Managed Service para Apache Flink. Edite los roles de servicio solo cuando Managed Service para Apache Flink proporcione orientación para hacerlo.

## Roles vinculados a servicios para Managed Service para Apache Flink
<a name="security_iam_service-with-iam-roles-service-linked"></a>

**Compatible con roles vinculados al servicio:** sí

 Un rol vinculado a un servicio es un tipo de rol de servicio que está vinculado a un. Servicio de AWS El servicio puede asumir el rol para realizar una acción en su nombre. Los roles vinculados al servicio aparecen en usted Cuenta de AWS y son propiedad del servicio. Un administrador de IAM puede ver, pero no editar, los permisos de los roles vinculados a servicios. 

Para más información sobre cómo crear o administrar roles vinculados a servicios, consulta [Servicios de AWS que funcionan con IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html). Busque un servicio en la tabla que incluya `Yes` en la columna **Rol vinculado a un servicio**. Seleccione el vínculo **Sí** para ver la documentación acerca del rol vinculado a servicios para ese servicio.

# Ejemplos de políticas basadas en identidades de Amazon Managed Service para Apache Flink
<a name="security_iam_id-based-policy-examples"></a>

De forma predeterminada, los usuarios y roles no tienen permiso para crear ni modificar los recursos de Managed Service para Apache Flink. Un administrador de IAM puede crear políticas de IAM para conceder permisos a los usuarios para realizar acciones en los recursos que necesitan.

Para obtener información acerca de cómo crear una política basada en identidades de IAM mediante el uso de estos documentos de políticas JSON de ejemplo, consulte [Creación de políticas de IAM (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) en la *Guía del usuario de IAM*.

Para obtener más información sobre las acciones y los tipos de recursos definidos por Managed Service for Apache Flink, incluido el ARNs formato de cada uno de los tipos de recursos, consulte [Acciones, recursos y claves de condición de Amazon Managed Service for Apache Flink](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awskinesisanalytics.html) en la Referencia de *autorización de servicios*.

**Topics**
+ [Prácticas recomendadas sobre las políticas](#security_iam_service-with-iam-policy-best-practices)
+ [Uso de la consola de Managed Service para Apache Flink](#security_iam_id-based-policy-examples-console)
+ [Cómo permitir a los usuarios consultar sus propios permisos](#security_iam_id-based-policy-examples-view-own-permissions)

## Prácticas recomendadas sobre las políticas
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Las políticas basadas en identidades determinan si alguien puede crear, acceder o eliminar los recursos de Managed Service para Apache Flink de la cuenta. Estas acciones pueden generar costos adicionales para su Cuenta de AWS. Siga estas directrices y recomendaciones al crear o editar políticas basadas en identidades:
+ **Comience con las políticas AWS administradas y avance hacia los permisos con privilegios mínimos: para empezar a conceder permisos** a sus usuarios y cargas de trabajo, utilice las *políticas AWS administradas* que otorgan permisos para muchos casos de uso comunes. Están disponibles en su. Cuenta de AWS Le recomendamos que reduzca aún más los permisos definiendo políticas administradas por el AWS cliente que sean específicas para sus casos de uso. Con el fin de obtener más información, consulte las [políticas administradas por AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) o las [políticas administradas por AWS para funciones de tarea](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) en la *Guía de usuario de IAM*.
+ **Aplique permisos de privilegio mínimo**: cuando establezca permisos con políticas de IAM, conceda solo los permisos necesarios para realizar una tarea. Para ello, debe definir las acciones que se pueden llevar a cabo en determinados recursos en condiciones específicas, también conocidos como *permisos de privilegios mínimos*. Con el fin de obtener más información sobre el uso de IAM para aplicar permisos, consulte [Políticas y permisos en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) en la *Guía del usuario de IAM*.
+ **Utilice condiciones en las políticas de IAM para restringir aún más el acceso**: puede agregar una condición a sus políticas para limitar el acceso a las acciones y los recursos. Por ejemplo, puede escribir una condición de políticas para especificar que todas las solicitudes deben enviarse utilizando SSL. También puedes usar condiciones para conceder el acceso a las acciones del servicio si se utilizan a través de una acción específica Servicio de AWS, por ejemplo CloudFormation. Para obtener más información, consulte [Elementos de la política de JSON de IAM: Condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) en la *Guía del usuario de IAM*.
+ **Utiliza el analizador de acceso de IAM para validar las políticas de IAM con el fin de garantizar la seguridad y funcionalidad de los permisos**: el analizador de acceso de IAM valida políticas nuevas y existentes para que respeten el lenguaje (JSON) de las políticas de IAM y las prácticas recomendadas de IAM. El analizador de acceso de IAM proporciona más de 100 verificaciones de políticas y recomendaciones procesables para ayudar a crear políticas seguras y funcionales. Para más información, consulte [Validación de políticas con el Analizador de acceso de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) en la *Guía del usuario de IAM*.
+ **Requerir autenticación multifactor (MFA**): si tiene un escenario que requiere usuarios de IAM o un usuario raíz en Cuenta de AWS su cuenta, active la MFA para mayor seguridad. Para exigir la MFA cuando se invoquen las operaciones de la API, añada condiciones de MFA a sus políticas. Para más información, consulte [Acceso seguro a la API con MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) en la *Guía del usuario de IAM*.

Para obtener más información sobre las prácticas recomendadas de IAM, consulte [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) en la *Guía del usuario de IAM*.

## Uso de la consola de Managed Service para Apache Flink
<a name="security_iam_id-based-policy-examples-console"></a>

Para acceder a la consola de Amazon Managed Service para Apache Flink, debe tener un conjunto mínimo de permisos. Estos permisos deben permitirle registrar y consultar los detalles acerca de los recursos de Managed Service para Apache Flink en su  Cuenta de AWS. Si crea una política basada en identidades que sea más restrictiva que el mínimo de permisos necesarios, la consola no funcionará del modo esperado para las entidades (usuarios o roles) que tengan esa política.

No es necesario que concedas permisos mínimos de consola a los usuarios que solo realizan llamadas a la API o a la AWS CLI API. AWS En su lugar, permita el acceso únicamente a las acciones que coincidan con la operación de API que intentan realizar.

Para garantizar que los usuarios y los roles puedan seguir utilizando la consola del Servicio gestionado para Apache Flink, adjunte también el Servicio gestionado para Apache Flink `ConsoleAccess` o la política `ReadOnly` AWS gestionada a las entidades. Para obtener más información, consulte [Adición de permisos a un usuario](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) en la *Guía del usuario de IAM*:

## Cómo permitir a los usuarios consultar sus propios permisos
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

En este ejemplo, se muestra cómo podría crear una política que permita a los usuarios de IAM ver las políticas administradas e insertadas que se asocian a la identidad de sus usuarios. Esta política incluye permisos para completar esta acción en la consola o mediante programación mediante la API o. AWS CLI AWS 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```







# Solución de problemas de identidad y acceso de Amazon Managed Service para Apache Flink
<a name="security_iam_troubleshoot"></a>

Utilice la siguiente información para diagnosticar y solucionar los problemas comunes que puedan surgir cuando trabaje con Managed Service para Apache Flink e IAM.

**Topics**
+ [No tengo autorización para realizar una acción en Managed Service para Apache Flink](#security_iam_troubleshoot-no-permissions)
+ [No estoy autorizado a realizar lo siguiente: PassRole](#security_iam_troubleshoot-passrole)
+ [Quiero permitir que personas ajenas a mi AWS cuenta accedan a mis recursos de Managed Service for Apache Flink](#security_iam_troubleshoot-cross-account-access)

## No tengo autorización para realizar una acción en Managed Service para Apache Flink
<a name="security_iam_troubleshoot-no-permissions"></a>

Si Consola de administración de AWS le indica que no está autorizado a realizar una acción, debe ponerse en contacto con el administrador para obtener ayuda. El administrador es la persona que le facilitó el nombre de usuario y la contraseña.

En el siguiente ejemplo, el error se produce cuando el usuario `mateojackson` intenta utilizar la consola para consultar los detalles acerca de un recurso ficticio `my-example-widget`, pero no tiene los permisos ficticios `Kinesis Analytics:GetWidget`.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: Kinesis Analytics:GetWidget on resource: my-example-widget
```

En este caso, Mateo pide a su administrador que actualice sus políticas de forma que pueda obtener acceso al recurso `my-example-widget` mediante la acción `Kinesis Analytics:GetWidget`.

## No estoy autorizado a realizar lo siguiente: PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Si recibe un error que indica que no tiene autorización para realizar la acción `iam:PassRole`, se deben actualizar las políticas a fin de permitirle pasar un rol a Managed Service para Apache Flink.

Algunas Servicios de AWS permiten transferir una función existente a ese servicio en lugar de crear una nueva función de servicio o una función vinculada a un servicio. Para ello, debe tener permisos para transferir la función al servicio.

En el siguiente ejemplo, el error se produce cuando un usuario de IAM denominado `marymajor` intenta utilizar la consola para realizar una acción en Managed Service para Apache Flink. Sin embargo, la acción requiere que el servicio cuente con permisos que otorguen un rol de servicio. Mary no tiene permisos para transferir el rol al servicio.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

En este caso, las políticas de Mary se deben actualizar para permitirle realizar la acción `iam:PassRole`.

Si necesita ayuda, póngase en contacto con su AWS administrador. El administrador es la persona que le proporcionó las credenciales de inicio de sesión.

## Quiero permitir que personas ajenas a mi AWS cuenta accedan a mis recursos de Managed Service for Apache Flink
<a name="security_iam_troubleshoot-cross-account-access"></a>

Se puede crear un rol que los usuarios de otras cuentas o las personas externas a la organización puedan utilizar para acceder a sus recursos. Se puede especificar una persona de confianza para que asuma el rol. En el caso de los servicios que admiten políticas basadas en recursos o listas de control de acceso (ACLs), puede utilizar esas políticas para permitir que las personas accedan a sus recursos.

Para obtener más información, consulte lo siguiente:
+ Para saber si Managed Service para Apache Flink es compatible con estas características, consulte [Cómo funciona Amazon Managed Service para Apache Flink con IAM](security_iam_service-with-iam.md).
+ Para obtener información sobre cómo proporcionar acceso a los recursos de su Cuentas de AWS propiedad, consulte [Proporcionar acceso a un usuario de IAM en otro de su propiedad en la Cuenta de AWS Guía del usuario](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) de *IAM*.
+ Para obtener información sobre cómo proporcionar acceso a tus recursos a terceros Cuentas de AWS, consulta Cómo [proporcionar acceso a recursos que Cuentas de AWS son propiedad de terceros](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) en la Guía del usuario de *IAM*.
+ Para obtener información sobre cómo proporcionar acceso mediante una federación de identidades, consulte [Proporcionar acceso a usuarios autenticados externamente (identidad federada)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) en la *Guía del usuario de IAM*.
+ Para conocer sobre la diferencia entre las políticas basadas en roles y en recursos para el acceso entre cuentas, consulte [Acceso a recursos entre cuentas en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) en la *Guía del usuario de IAM*.

# Prevención de la sustitución confusa entre servicios
<a name="iam-cross-service-confused-deputy-prevention"></a>

En AWS, la suplantación de identidad entre servicios puede producirse cuando un servicio (el servicio de llamadas) llama a otro servicio (el servicio al que se llama). El servicio que lleva a cabo las llamadas se puede manipular para actuar en función de los recursos de otro cliente a pesar de que no debe tener los permisos adecuados, lo que da como resultado un problema de suplente confuso.

Para evitar que los agentes confusos, AWS proporciona herramientas que lo ayudan a proteger sus datos en todos los servicios utilizando los directores de servicio a los que se les ha dado acceso a los recursos de su cuenta. Esta sección se centra en la prevención de problemas de suplentes confusos entre servicios específica de Managed Service para Apache Flink; sin embargo, puede obtener más información sobre este tema en la sección [El problema del suplente confuso](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) de la *Guía del usuario de IAM*. 

En el contexto del servicio gestionado para Apache Flink, te recomendamos que utilices las claves de contexto [aws: SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) [y aws: SourceAccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) global condition en tu política de confianza de roles para limitar el acceso al rol únicamente a las solicitudes generadas por los recursos esperados.

Utiliza `aws:SourceArn` si desea que solo se asocie un recurso al acceso entre servicios. Utiliza `aws:SourceAccount` si quiere permitir que cualquier recurso de esa cuenta se asocie al uso entre servicios.

El valor de `aws:SourceArn` debe ser el ARN del recurso utilizado por Managed Service para Apache Flink, que se especifica con el siguiente formato: `arn:aws:kinesisanalytics:region:account:resource`.

La forma más eficaz de protegerse contra el problema del suplente confuso es utilizar la clave de contexto de condición global de `aws:SourceArn` con el ARN completo del recurso.

Si no conoce el ARN completo del recurso o si está especificando varios recursos, utilice la clave `aws:SourceArn` con caracteres comodines (\$1) para las partes desconocidas del ARN. Por ejemplo: `arn:aws:kinesisanalytics::111122223333:*`.

Las políticas de roles que proporcione a Managed Service para Apache Flink, así como las políticas de confianza de los roles generados para usted, pueden utilizar estas claves.

Para protegerse contra el problema de suplente confuso, lleve a cabo los siguientes pasos: 

**Cómo protegerse contra el problema del suplente confuso**

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

1. Elija **Roles** y, a continuación, seleccione el rol que desee modificar.

1. Elija **Editar la política de confianza**.

1. En la página **Editar política de confianza**, sustituya la política JSON predeterminada por una política que utilice una o ambas claves contextuales `aws:SourceArn` y `aws:SourceAccount` de condición global. Consulte el siguiente ejemplo de política:

1. Elija **Actualizar política**.

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Principal":{
               "Service":"kinesisanalytics.amazonaws.com"
            },
            "Action":"sts:AssumeRole",
            "Condition":{
               "StringEquals":{
                  "aws:SourceAccount":"Account ID"
               },
               "ArnEquals":{
                  "aws:SourceArn":"arn:aws:kinesisanalytics:us-east-1:123456789012:application/my-app"
               }
            }
         }
      ]
   }
   ```

------