

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.

# Funciones de IAM para enviar eventos a objetivos en Amazon EventBridge
<a name="eb-events-iam-roles"></a>

Para transmitir eventos a los objetivos, EventBridge necesita un rol de IAM.

**Para crear una función de IAM para enviar eventos a EventBridge**

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

1. Para crear un rol de IAM, siga los pasos que se indican en la Guía del usuario de * IAM para [ crear un rol para delegar permisos a un AWS servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html). * Cuando siga los pasos, haga lo siguiente:
   + En **Nombre del rol**, utilice un nombre que sea exclusivo dentro de su cuenta.
   + En ** Seleccionar un tipo de rol**, elige **AWS Service Roles y**, a continuación, Amazon. ** EventBridge ** Esto otorga EventBridge los permisos para asumir el rol.
   + En ** Adjuntar política**, elija ** AmazonEventBridgeFullAccess**.

También puedes crear tus propias políticas de IAM personalizadas para conceder permisos a las EventBridge acciones y los recursos. Puede asociar estas políticas personalizadas a los grupos o usuarios de IAM que requieran esos permisos. Para obtener más información acerca de las políticas de IAM, consulte [Descripción general de las políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) en la *Guía del usuario de IAM*. Para obtener más información sobre cómo administrar y crear políticas de IAM personalizadas, consulte [Administrar políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingPolicies.html) en la *Guía del usuario de IAM*.

## Se requieren permisos para acceder EventBridge a los objetivos mediante las funciones de IAM
<a name="eb-target-permissions"></a>

EventBridge Los objetivos suelen requerir funciones de IAM que concedan permiso EventBridge para invocar el objetivo. A continuación se muestran algunos ejemplos de varios AWS servicios y objetivos. Para otros, utilice la EventBridge consola para crear una regla y crear un nuevo rol, que se creará con una política con permisos específicos preconfigurados. 

Los objetivos de Amazon SQS, Amazon SNS y Lambda admiten tanto las funciones de ejecución de IAM como las políticas basadas en recursos. CloudWatch Los destinos de registro y EventBridge bus no utilizan funciones, y los permisos para ello EventBridge deben concederse mediante una política de recursos. Los objetivos de API Gateway pueden usar políticas de recursos o roles de IAM.

### Destinos de la API
<a name="eb-target-permissions-apid"></a>

Si el destino es un destino de la API, el rol que especifique debe incluir una política con la siguiente instrucción:
+ **Efecto**: `Allow`
+ **Acción:** `events:InvokeApiDestination`
+ **Recurso:** `arn:aws:events:*:*:api-destination/*`

### Flujos de Kinesis
<a name="eb-target-permissions-kinesis"></a>

Si el destino es un flujo de Kinesis, el rol utilizado para enviar datos de eventos a dicho destino debe incluir una política con la siguiente instrucción:
+ **Efecto**: `Allow`
+ **Acción:** `kinesis:PutRecord`
+ **Recurso:** `*`

### Comando ejecutar de Systems Manager
<a name="eb-target-permissions-sys"></a>

Si el destino es el comando ejecutar de Systems Manager y especifica uno o varios valores de `InstanceIds` para el comando, el rol que especifique debe incluir una política con la siguiente instrucción:
+ **Efecto**: `Allow`
+ **Acción:** `ssm:SendCommand`
+ **Recursos:**
  + `arn:aws:ec2:{{region}}:{{accountId}}:instance/{{instanceId1}}`
  + `arn:aws:ec2:{{region}}:{{accountId}}:instance/{{instanceId2}}`
  + `arn:aws:ssm:{{region}}:*:document/{{documentName}}`

Si el objetivo es el comando run de Systems Manager y especificas una o más etiquetas para las instancias de destino, el rol debe incluir la siguiente declaración:
+ **Efecto**: `Allow`
+ **Acción:** `ssm:SendCommand`
+ **Recursos:**
  + `arn:aws:ec2:{{region}}:{{accountId}}:instance/*`
  + `arn:aws:ssm:{{region}}:{{accountId}}:managed-instance/*`
+ **Condición**:

  ```
  "StringEquals": {
    "aws:ResourceTag/{{tagKey}}": ["{{tagValues}}"]
  }
  ```

La clave de `aws:ResourceTag` condición funciona tanto para las instancias EC2 como para las instancias administradas híbridas (nodos locales registrados en Systems Manager). La clave de `ssm:resourceTag/{{tagKey}}` condición también es compatible con la `SendCommand` acción.

El rol también debe incluir la siguiente declaración para permitir el acceso al documento de Systems Manager:
+ **Efecto**: `Allow`
+ **Acción:** `ssm:SendCommand`
+ **Recurso:** `arn:aws:ssm:{{region}}:*:document/{{documentName}}`

### Máquinas de estado Step Functions
<a name="eb-target-permissions-step-functions"></a>

Si el objetivo es una máquina de AWS Step Functions estados, el rol que especifique debe incluir una política con lo siguiente:
+ **Efecto**: `Allow`
+ **Acción:** `states:StartExecution`
+ **Recurso:** `arn:aws:states:*:*:stateMachine:*`

### Tareas de Amazon ECS
<a name="eb-target-permissions-ec2"></a>

Si el destino es una tarea de Amazon ECS, el rol que especifique debe incluir la siguiente política.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ecs:RunTask"
            ],
            "Resource": [
                "arn:aws:ecs:*:{{111122223333}}:task-definition/{{task-definition-name}}"
            ],
            "Condition": {
                "ArnLike": {
                    "ecs:cluster": "arn:aws:ecs:*:{{111122223333}}:cluster/{{cluster-name}}"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": [
                "*"
            ],
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": "ecs-tasks.amazonaws.com"
                }
            }
        }
    ]
}
```

------

La siguiente política permite que los objetivos integrados EventBridge realicen acciones de Amazon EC2 en su nombre. Debe utilizarla para Consola de administración de AWS crear reglas con objetivos integrados.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "TargetInvocationAccess",
            "Effect": "Allow",
            "Action": [
                "ec2:Describe*",
                "ec2:RebootInstances",
                "ec2:StopInstances",
                "ec2:TerminateInstances",
                "ec2:CreateSnapshot"
            ],
            "Resource": "*"
        }
    ]
}
```

------

La siguiente política permite transmitir eventos EventBridge a las transmisiones de Kinesis de su cuenta. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "KinesisAccess",
            "Effect": "Allow",
            "Action": [
                "kinesis:PutRecord"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Customer-managed ejemplo de política: uso del etiquetado para controlar el acceso a las reglas
<a name="eb-customer-managed-policies"></a>

El siguiente ejemplo muestra una política de usuario que otorga permisos para EventBridge las acciones. Esta política funciona cuando se utilizan la EventBridge API, AWS los SDK o el AWS CLI.

Puedes conceder a los usuarios acceso a EventBridge reglas específicas y, al mismo tiempo, impedir que accedan a otras reglas. Para ello, etiquete ambos conjuntos de reglas y, a continuación, utilice políticas de IAM para hacer referencia a esas etiquetas. Para obtener más información sobre el etiquetado de EventBridge recursos, consulte[Recursos de etiquetado en Amazon EventBridge](eb-tagging.md).

Puede conceder una política de IAM a un usuario para permitir el acceso únicamente a las reglas con una determinada etiqueta. Usted elige las reglas a las que desea conceder el acceso etiquetándolas con esa etiqueta concreta. Por ejemplo, la siguiente política concede a un usuario acceso a reglas con el valor de `Prod` para la clave de etiqueta `Stack`.

```
{
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "events:*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/Stack": "Prod"
                }
            }
        }
    ]
}
```

Para obtener más información acerca del uso de instrucciones de política de IAM, consulte [Control del acceso mediante las políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_controlling.html) en la *Guía del usuario de IAM*.