

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Créez et gérez Amazon EMR Serverless des applications avec Step Functions
<a name="connect-emr-serverless"></a>

Découvrez comment créer, démarrer, arrêter et supprimer des applications sur EMR Serverless à l'aide de Step Functions. Cette page répertorie les états pris en charge APIs et fournit des exemples d'`Task`états permettant de réaliser des cas d'utilisation courants.

Pour en savoir plus sur l'intégration aux AWS services dans Step Functions, reportez-vous [Intégration des services ](integrate-services.md) aux sections et[Transmission de paramètres à une API de service dans Step Functions](connect-parameters.md).

**Principales fonctionnalités de l'EMR Serverlessintégration optimisée**  
 L'intégration EMR Serverless de services optimisée comporte un ensemble personnalisé [APIs](#connect-emr-serverless-custom-apis)qui englobe le sous-jacent EMR Serverless APIs. En raison de cette personnalisation, l'EMR Serverlessintégration optimisée diffère considérablement de l'intégration des services du AWS SDK. 
De plus, l'EMR Serverlessintégration optimisée prend en charge le modèle [Exécuter une tâche (.sync)](connect-to-resource.md#connect-sync) d'intégration.
Le modèle [Attendre un rappel avec un jeton de tâche](connect-to-resource.md#connect-wait-token) d'intégration **n'est pas** pris en charge.

## EMR Serverlessintégration des services APIs
<a name="connect-emr-serverless-custom-apis"></a>

Pour l'intégrer AWS Step FunctionsEMR Serverless, vous pouvez utiliser les six intégrations EMR Serverless de services suivantes APIs. Ces intégrations de services APIs sont similaires à celles correspondantes EMR Serverless APIs, avec quelques différences dans les champs transmis et dans les réponses renvoyées.

Le tableau suivant décrit les différences entre chaque API d'intégration de EMR Serverless services et EMR Serverless l'API correspondante.


| EMR ServerlessAPI d'intégration de services | EMR ServerlessAPI correspondante | Différences | 
| --- | --- | --- | 
|  *Créer une application* Crée une application. EMR Serverlessest lié à un type de IAM rôle unique appelé rôle lié à un service. Pour que `createApplication` et `createApplication.sync` fonctionnent, vous devez avoir configuré les autorisations nécessaires pour créer le rôle lié au service `AWSServiceRoleForAmazonEMRServerless`. Pour plus d'informations à ce sujet, y compris une déclaration que vous pouvez ajouter à votre politique d'IAMautorisations, consultez la section [Utilisation de rôles liés à un service](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/using-service-linked-roles.html) pour. EMR Serverless  |  [CreateApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_CreateApplication.html)  | Aucune | 
|  *CreateApplication.sync* Crée une application.  |  [CreateApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_CreateApplication.html)  |  Aucune différence entre les demandes et les réponses de l'EMR ServerlessAPI et de l'API d'intégration des EMR Serverless services. Cependant, *CreateApplication.sync* attend que l'application atteigne cet état. `CREATED`  | 
|  *Démarrer l'application* Démarre une application spécifiée et initialise la capacité initiale de l'application si elle est configurée.  |  [StartApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StartApplication.html)  |  La réponse de l'EMR ServerlessAPI ne contient aucune donnée, mais la réponse de l'API d'intégration des EMR Serverless services inclut les données suivantes. <pre>{<br />  "ApplicationId": "string"<br />}</pre>  | 
|  *Démarrez Application.sync* Démarre une application spécifiée et initialise la capacité initiale si elle est configurée.  |  [StartApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StartApplication.html)  |  La réponse de l'EMR ServerlessAPI ne contient aucune donnée, mais la réponse de l'API d'intégration des EMR Serverless services inclut les données suivantes. <pre>{<br />  "ApplicationId": "string"<br />}</pre> *StartApplication.sync* attend également que l'application atteigne son état. `STARTED`  | 
|  *Arrêter l'application* Arrête une application spécifiée et libère sa capacité initiale si elle est configurée. Toutes les tâches planifiées et en cours d'exécution doivent être terminées ou annulées avant d'arrêter une application.  |  [StopApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StopApplication.html)  |  La réponse de l'EMR ServerlessAPI ne contient aucune donnée, mais la réponse de l'API d'intégration des EMR Serverless services inclut les données suivantes. <pre>{<br />  "ApplicationId": "string"<br />}</pre>  | 
|  *Arrêter Application.sync* Arrête une application spécifiée et libère sa capacité initiale si elle est configurée. Toutes les tâches planifiées et en cours d'exécution doivent être terminées ou annulées avant d'arrêter une application.  |  [StopApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StopApplication.html)  |  La réponse de l'EMR ServerlessAPI ne contient aucune donnée, mais la réponse de l'API d'intégration des EMR Serverless services inclut les données suivantes. <pre>{<br />  "ApplicationId": "string"<br />}</pre> *StopApplication.sync* attend également que l'application atteigne l'état. `STOPPED`  | 
|  *Supprimer l'application* Supprime une application. Une application doit être à l'`CREATED`état `STOPPED` ou pour être supprimée.  |  [DeleteApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_DeleteApplication.html)  |  La réponse de l'EMR ServerlessAPI ne contient aucune donnée, mais la réponse de l'API d'intégration des EMR Serverless services inclut les données suivantes. <pre>{<br />  "ApplicationId": "string"<br />}</pre>  | 
|  *Supprimer Application.sync* Supprime une application. Une application doit être à l'`CREATED`état `STOPPED` ou pour être supprimée.  |  [DeleteApplication](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_DeleteApplication.html)  |  La réponse de l'EMR ServerlessAPI ne contient aucune donnée, mais la réponse de l'API d'intégration des EMR Serverless services inclut les données suivantes. <pre>{<br />  "ApplicationId": "string"<br />}</pre> *StopApplication.sync* attend également que l'application atteigne l'état. `TERMINATED`  | 
|  *startJobRun* Démarre l'exécution d'une tâche.  |  [StartJobRun](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StartJobRun.html)  | Aucune | 
|  *startJobRun.sync* Démarre l'exécution d'une tâche.  |  [StartJobRun](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StartJobRun.html)  |  Aucune différence entre les demandes et les réponses de l'EMR ServerlessAPI et de l'API d'intégration des EMR Serverless services. Cependant, *startJobRun.sync* attend que l'application atteigne cet état. `SUCCESS`  | 
|  *cancelJobRun* Annule l'exécution d'une tâche.  |  [CancelJobRun](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_CancelJobRun.html)  | Aucune | 
|  *cancelJobRun.sync* Annule l'exécution d'une tâche.  |  [CancelJobRun](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_CancelJobRun.html)  |  Aucune différence entre les demandes et les réponses de l'EMR ServerlessAPI et de l'API d'intégration des EMR Serverless services. Cependant, *cancelJobRun.sync* attend que l'application atteigne cet état. `CANCELLED`  | 

## Cas d'utilisation de l'intégration EMR sans serveur
<a name="connect-emr-serverless-use-cases"></a>

Pour l'intégration optimisée des EMR Serverless services, nous vous recommandons de créer une seule application, puis de l'utiliser pour exécuter plusieurs tâches. Par exemple, dans une machine à états unique, vous pouvez inclure plusieurs [startJobRun](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_StartJobRun.html)demandes, qui utilisent toutes la même application. Les exemples [État du flux de travail des tâches](state-task.md) d'états suivants présentent des cas d'utilisation EMR Serverless APIs à intégrerStep Functions. Pour plus d'informations sur les autres cas d'utilisation deEMR Serverless, voir [Qu'est-ce que Amazon EMR Serverless](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/emr-serverless.html).

**Astuce**  
Pour déployer un exemple de machine à états qui s'intègre EMR Serverless à l'exécution de plusieurs tâches, consultez[Exécuter une EMR Serverless tâche](sample-emr-serverless-job.md).
+ [Création d’une application](#connect-emr-serverless-task-state-createapp)
+ [Lancer une application](#connect-emr-serverless-task-state-startapp)
+ [Arrêter une application](#connect-emr-serverless-task-state-stopapp)
+ [Supprimer une application](#connect-emr-serverless-task-state-deleteapp)
+ [Commencer un emploi dans une application](#connect-emr-serverless-task-state-startjobrun)
+ [Annuler une offre d'emploi dans une candidature](#connect-emr-serverless-task-state-canceljobrun)

Pour en savoir plus sur la configuration IAM des autorisations lors de l'utilisation Step Functions avec d'autres AWS services, consultez[Comment Step Functions génère des politiques IAM pour les services intégrés](service-integration-iam-templates.md).

Dans les exemples illustrés dans les cas d'utilisation suivants, remplacez le *italicized* texte par des informations spécifiques à votre ressource. Remplacez par exemple *yourApplicationId* par l'ID de votre EMR Serverless application, tel que`00yv7iv71inak893`.

### Création d’une application
<a name="connect-emr-serverless-task-state-createapp"></a>

L'exemple d'état de tâche suivant crée une application à l'aide de l'API d'intégration du service *CreateApplication.sync.*

```
"Create_Application": {
    "Type": "Task",
    "Resource": "arn:aws:states:::emr-serverless:createApplication.sync",
    "Arguments": {
        "Name": "MyApplication",
        "ReleaseLabel": "emr-6.9.0",
        "Type": "SPARK"
    },
    "End": true
}
```

### Lancer une application
<a name="connect-emr-serverless-task-state-startapp"></a>

L'exemple d'état de tâche suivant démarre une application à l'aide de l'API d'intégration du service *StartApplication.sync.*

```
"Start_Application": {
    "Type": "Task",
    "Resource": "arn:aws:states:::emr-serverless:startApplication.sync",
    "Arguments": {
        "ApplicationId": "yourApplicationId"
    },
    "End": true
}
```

### Arrêter une application
<a name="connect-emr-serverless-task-state-stopapp"></a>

L'exemple d'état de tâche suivant arrête une application à l'aide de l'API d'intégration du service *StopApplication.sync.*

```
"Stop_Application": {
    "Type": "Task",
    "Resource": "arn:aws:states:::emr-serverless:stopApplication.sync",
    "Arguments": {
        "ApplicationId": "yourApplicationId"
    },
    "End": true
}
```

### Supprimer une application
<a name="connect-emr-serverless-task-state-deleteapp"></a>

L'exemple d'état de tâche suivant supprime une application à l'aide de l'API d'intégration du service *DeleteApplication.sync.*

```
"Delete_Application": {
    "Type": "Task",
    "Resource": "arn:aws:states:::emr-serverless:deleteApplication.sync",
    "Arguments": {
        "ApplicationId": "yourApplicationId"
    },
    "End": true
}
```

### Commencer un emploi dans une application
<a name="connect-emr-serverless-task-state-startjobrun"></a>

L'exemple d'état de tâche suivant démarre une tâche dans une application à l'aide de l'API d'intégration du service *startJobRun.sync.*

```
"Start_Job": {
    "Type": "Task",
    "Resource": "arn:aws:states:::emr-serverless:startJobRun.sync",
    "Arguments": {
        "ApplicationId": "yourApplicationId",
        "ExecutionRoleArn": "arn:aws:iam::account-id:role/myEMRServerless-execution-role",
        "JobDriver": {
            "SparkSubmit": {
                "EntryPoint": "s3://<amzn-s3-demo-bucket>/sample.py",
                "EntryPointArguments": ["1"],
                "SparkSubmitParameters": "--conf spark.executor.cores=4 --conf spark.executor.memory=4g --conf spark.driver.cores=2 --conf spark.driver.memory=4g --conf spark.executor.instances=1"
            }
        }
    },
    "End": true
}
```

### Annuler une offre d'emploi dans une candidature
<a name="connect-emr-serverless-task-state-canceljobrun"></a>

L'exemple d'état de tâche suivant annule une tâche dans une application à l'aide de l'API d'intégration du service *cancelJobRun.sync.*

```
"Cancel_Job": {
    "Type": "Task",
    "Resource": "arn:aws:states:::emr-serverless:cancelJobRun.sync",
    "Arguments": {
        "ApplicationId": "{% $states.input.ApplicationId %}",
        "JobRunId": "{% $states.input.JobRunId %}"
    },
    "End": true
}
```

## Politiques IAM pour les appels Amazon EMR Serverless
<a name="emr-serverless-iam"></a>

Lorsque vous créez une machine d'état à l'aide de la console, un rôle d'exécution est Step Functions automatiquement créé pour votre machine d'état avec le moins de privilèges requis. Ces IAM rôles générés automatiquement sont valides pour la machine à états Région AWS dans laquelle vous créez la machine à états.

Les exemples de modèles suivants montrent comment AWS Step Functions générer des politiques IAM en fonction des ressources contenues dans la définition de votre machine d'état. Pour plus d’informations, consultez [Comment Step Functions génère des politiques IAM pour les services intégrés](service-integration-iam-templates.md) et [Découvrez les modèles d'intégration des services dans Step Functions](connect-to-resource.md).

Lorsque vous créez des IAM politiques, nous vous recommandons de ne pas y inclure de caractères génériques. En tant que bonne pratique en matière de sécurité, vous devez limiter autant que possible vos politiques. Vous ne devez utiliser des politiques dynamiques que lorsque certains paramètres d'entrée ne sont pas connus pendant l'exécution.

En outre, les utilisateurs administrateurs doivent faire preuve de prudence lorsqu'ils accordent à des utilisateurs non administrateurs des rôles d'exécution pour exécuter les machines d'état. Nous vous recommandons d'inclure les politiques PassRole dans les rôles d'exécution si vous créez vous-même des politiques. Nous vous recommandons également d'ajouter les clés de `aws:SourceAccount` contexte `aws:SourceARN` et dans les rôles d'exécution.

### Exemples de politiques IAM pour l'intégration EMR Serverless avec Step Functions
<a name="emr-serverless-iam-policy-eg"></a>
+ [Exemple de politique IAM pour CreateApplication](#emr-serverless-policy-createapp)
+ [Exemple de politique IAM pour StartApplication](#emr-serverless-policy-startapp)
+ [Exemple de politique IAM pour StopApplication](#emr-serverless-policy-stopapp)
+ [Exemple de politique IAM pour DeleteApplication](#emr-serverless-policy-deleteapp)
+ [Exemple de politique IAM pour StartJobRun](#emr-serverless-policy-startjobrun)
+ [Exemple de politique IAM pour CancelJobRun](#emr-serverless-policy-canceljobrun)

#### Exemple de politique IAM pour CreateApplication
<a name="emr-serverless-policy-createapp"></a>

Voici un exemple de politique IAM pour une machine à états dotée d'un CreateApplication [État du flux de travail des tâches](state-task.md) état.

**Note**  
Vous devez spécifier les CreateServiceLinkedRole autorisations dans vos politiques IAM lors de la création de la toute première application de votre compte. Par la suite, il n'est pas nécessaire d'ajouter cette autorisation. Pour plus d'informations à ce sujet CreateServiceLinkedRole, consultez [CreateServiceLinkedRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateServiceLinkedRole.html)la https://docs.aws.amazon.com/IAM/ dernière/ /. APIReference

Les ressources statiques et dynamiques pour les politiques suivantes sont identiques.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "emr-serverless:CreateApplication"
            ],
            "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "emr-serverless:GetApplication",
                "emr-serverless:DeleteApplication"
            ],
            "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateServiceLinkedRole",
            "Resource": "arn:aws:iam::123456789012:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*",
            "Condition": {
                "StringLike": {
                    "iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"
                }
            }
        }
   ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   
   "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "emr-serverless:CreateApplication"
            ],
            "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateServiceLinkedRole",
            "Resource": "arn:aws:iam::123456789012:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*",
            "Condition": {
                "StringLike": {
                    "iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"
                }
            }
        }
    ]
}
```

------

#### Exemple de politique IAM pour StartApplication
<a name="emr-serverless-policy-startapp"></a>

**Ressources statiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources statiques lorsque vous utilisez une machine à états dotée d'un StartApplication [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartApplication",
               "emr-serverless:GetApplication",
               "emr-serverless:StopApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        }
    ]
}
```

------

**Ressources dynamiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources dynamiques lorsque vous utilisez une machine à états dotée d'un StartApplication [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartApplication",
               "emr-serverless:GetApplication",
               "emr-serverless:StopApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        }
    ]
}
```

------

#### Exemple de politique IAM pour StopApplication
<a name="emr-serverless-policy-stopapp"></a>

**Ressources statiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources statiques lorsque vous utilisez une machine à états dotée d'un StopApplication [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StopApplication",
               "emr-serverless:GetApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StopApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        }
    ]
}
```

------

**Ressources dynamiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources dynamiques lorsque vous utilisez une machine à états dotée d'un StopApplication [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StopApplication",
               "emr-serverless:GetApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StopApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        }
    ]
}
```

------

#### Exemple de politique IAM pour DeleteApplication
<a name="emr-serverless-policy-deleteapp"></a>

**Ressources statiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources statiques lorsque vous utilisez une machine à états dotée d'un DeleteApplication [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:DeleteApplication",
               "emr-serverless:GetApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:DeleteApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        }
    ]
}
```

------

**Ressources dynamiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources dynamiques lorsque vous utilisez une machine à états dotée d'un DeleteApplication [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:DeleteApplication",
               "emr-serverless:GetApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:DeleteApplication"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        }
    ]
}
```

------

#### Exemple de politique IAM pour StartJobRun
<a name="emr-serverless-policy-startjobrun"></a>

**Ressources statiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources statiques lorsque vous utilisez une machine à états dotée d'un StartJobRun [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": [
                "arn:aws:iam::123456789012:role/jobExecutionRoleArn"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "emr-serverless:GetJobRun",
                "emr-serverless:CancelJobRun"
            ],
            "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId/jobruns/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessJobRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": [
                "arn:aws:iam::123456789012:role/jobExecutionRoleArn"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com"
                }
            }
        }
    ]
}
```

------

**Ressources dynamiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources dynamiques lorsque vous utilisez une machine à états dotée d'un StartJobRun [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartJobRun",
               "emr-serverless:GetJobRun",
               "emr-serverless:CancelJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": [
                "arn:aws:iam::123456789012:role/jobExecutionRoleArn"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessJobRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:StartJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": [
                "arn:aws:iam::123456789012:role/jobExecutionRoleArn"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com"
                }
            }
        }
    ]
}
```

------

#### Exemple de politique IAM pour CancelJobRun
<a name="emr-serverless-policy-canceljobrun"></a>

**Ressources statiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources statiques lorsque vous utilisez une machine à états dotée d'un CancelJobRun [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:CancelJobRun",
               "emr-serverless:GetJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId/jobruns/jobRunId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessJobRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:CancelJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/applicationId/jobruns/jobRunId"
            ]
        }
    ]
}
```

------

**Ressources dynamiques**  
Vous trouverez ci-dessous des exemples de politique IAM pour les ressources dynamiques lorsque vous utilisez une machine à états dotée d'un CancelJobRun [État du flux de travail des tâches](state-task.md) état.

------
#### [ Run a Job (.sync) ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:CancelJobRun",
               "emr-serverless:GetJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "events:PutTargets",
                "events:PutRule",
                "events:DescribeRule"
            ],
            "Resource": [
                "arn:aws:events:us-east-1:123456789012:rule/StepFunctionsGetEventsForEMRServerlessJobRule"
            ]
        }
    ]
}
```

------
#### [ Request Response ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
        {
           "Effect": "Allow",
           "Action": [
               "emr-serverless:CancelJobRun"
            ],
           "Resource": [
                "arn:aws:emr-serverless:us-east-1:123456789012:/applications/*"
            ]
        }
    ]
}
```

------