

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.

# Identity and Access Management dans Amazon Simple Workflow Service
<a name="swf-dev-iam"></a>

L'accès à Amazon SWF nécessite des informations d'identification qui AWS peuvent être utilisées pour authentifier vos demandes. Ces informations d'identification doivent être autorisées à accéder aux AWS ressources, par exemple pour récupérer des données d'événements à partir d'autres AWS ressources. Les sections suivantes fournissent des informations détaillées sur la manière dont vous pouvez utiliser [Gestion des identités et des accès AWS (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) et Amazon SWF pour sécuriser vos ressources en contrôlant l'accès à celles-ci.

Gestion des identités et des accès AWS (IAM) est un outil Service AWS qui permet à un administrateur de contrôler en toute sécurité l'accès aux AWS ressources. Les administrateurs IAM contrôlent qui peut être *authentifié* (connecté) et *autorisé (autorisé*) à utiliser les ressources Amazon SWF. IAM est un Service AWS outil que vous pouvez utiliser sans frais supplémentaires.

**Topics**
+ [Public ciblé](#security_iam_audience)
+ [Authentification par des identités](#security_iam_authentication)
+ [Gestion de l’accès à l’aide de politiques](#security_iam_access-manage)
+ [Contrôle d’accès](#access-control-swf)
+ [Actions politiques pour Amazon SWF](#security_iam_service-with-iam-id-based-policies-actions)
+ [Ressources relatives aux politiques pour Amazon SWF](#security_iam_service-with-iam-id-based-policies-resources)
+ [Clés de conditions de politique pour Amazon SWF](#security_iam_service-with-iam-id-based-policies-conditionkeys)
+ [ACLs dans Amazon SWF](#security_iam_service-with-iam-acls)
+ [ABAC avec Amazon SWF](#security_iam_service-with-iam-tags)
+ [Utilisation d'informations d'identification temporaires avec Amazon SWF](#security_iam_service-with-iam-roles-tempcreds)
+ [Autorisations principales interservices pour Amazon SWF](#security_iam_service-with-iam-principal-permissions)
+ [Rôles de service pour Amazon SWF](#security_iam_service-with-iam-roles-service)
+ [Rôles liés à un service pour Amazon SWF](#security_iam_service-with-iam-roles-service-linked)
+ [Politiques basées sur l'identité pour Amazon SWF](#security_iam_service-with-iam-id-based-policies)
+ [Politiques basées sur les ressources au sein d'Amazon SWF](#security_iam_service-with-iam-resource-based-policies)
+ [Comment Amazon Simple Workflow Service fonctionne avec IAM](security_iam_service-with-iam.md)
+ [Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service](security_iam_id-based-policy-examples.md)
+ [Principes de base](swf-dev-iam.basic.md)
+ [Politiques IAM d'Amazon SWF](swf-dev-iam.policies.md)
+ [Récapitulatif API](swf-dev-iam.api.md)
+ [Stratégies basées sur des balises](tag-based-policies.md)
+ [Points de terminaison Amazon VPC pour Amazon SWF](swf-vpc-endpoints.md)
+ [Résolution des problèmes d'identité et d'accès à Amazon Simple Workflow Service](security_iam_troubleshoot.md)

## Public ciblé
<a name="security_iam_audience"></a>

La façon dont vous utilisez Gestion des identités et des accès AWS (IAM) varie en fonction de votre rôle :
+ **Utilisateur du service** : demandez des autorisations à votre administrateur si vous ne pouvez pas accéder aux fonctionnalités (voir [Résolution des problèmes d'identité et d'accès à Amazon Simple Workflow Service](security_iam_troubleshoot.md))
+ **Administrateur du service** : déterminez l’accès des utilisateurs et soumettez les demandes d’autorisation (voir [Comment Amazon Simple Workflow Service fonctionne avec IAM](security_iam_service-with-iam.md))
+ **Administrateur IAM** : rédigez des politiques pour gérer l’accès (voir [Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service](security_iam_id-based-policy-examples.md))

## Authentification par des identités
<a name="security_iam_authentication"></a>

L'authentification est la façon dont vous vous connectez à AWS l'aide de vos informations d'identification. Vous devez être authentifié en tant qu'utilisateur IAM ou en assumant un rôle IAM. Utilisateur racine d'un compte AWS

Vous pouvez vous connecter en tant qu'identité fédérée à l'aide d'informations d'identification provenant d'une source d'identité telle que AWS IAM Identity Center (IAM Identity Center), d'une authentification unique ou d'informations d'identification. Google/Facebook Pour plus d’informations sur la connexion, consultez [Connexion à votre Compte AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) dans le *Guide de l’utilisateur Connexion à AWS *.

Pour l'accès par programmation, AWS fournit un SDK et une CLI pour signer les demandes de manière cryptographique. Pour plus d’informations, consultez [Signature AWS Version 4 pour les demandes d’API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) dans le *Guide de l’utilisateur IAM*.

### Compte AWS utilisateur root
<a name="security_iam_authentication-rootuser"></a>

 Lorsque vous créez un Compte AWS, vous commencez par une seule identité de connexion appelée *utilisateur Compte AWS root* qui dispose d'un accès complet à toutes Services AWS les ressources. Il est vivement déconseillé d’utiliser l’utilisateur racine pour vos tâches quotidiennes. Pour les tâches qui requièrent des informations d’identification de l’utilisateur racine, consultez [Tâches qui requièrent les informations d’identification de l’utilisateur racine](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) dans le *Guide de l’utilisateur IAM*. 

### Identité fédérée
<a name="security_iam_authentication-federated"></a>

Il est recommandé d'obliger les utilisateurs humains à utiliser la fédération avec un fournisseur d'identité pour accéder à Services AWS l'aide d'informations d'identification temporaires.

Une *identité fédérée* est un utilisateur provenant de l'annuaire de votre entreprise, de votre fournisseur d'identité Web ou Directory Service qui y accède à Services AWS l'aide d'informations d'identification provenant d'une source d'identité. Les identités fédérées assument des rôles qui fournissent des informations d’identification temporaires.

Pour une gestion des accès centralisée, nous vous recommandons d’utiliser AWS IAM Identity Center. Pour plus d’informations, consultez [Qu’est-ce que IAM Identity Center ?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) dans le *Guide de l’utilisateur AWS IAM Identity Center *.

### Utilisateurs et groupes IAM
<a name="security_iam_authentication-iamuser"></a>

Un *[utilisateur IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* est une identité qui dispose d’autorisations spécifiques pour une seule personne ou application. Nous vous recommandons d’utiliser ces informations d’identification temporaires au lieu des utilisateurs IAM avec des informations d’identification à long terme. Pour plus d'informations, voir [Exiger des utilisateurs humains qu'ils utilisent la fédération avec un fournisseur d'identité pour accéder à AWS l'aide d'informations d'identification temporaires](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) dans le *guide de l'utilisateur IAM*.

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) spécifient une collection d’utilisateurs IAM et permettent de gérer plus facilement les autorisations pour de grands ensembles d’utilisateurs. Pour plus d’informations, consultez [Cas d’utilisation pour les utilisateurs IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) dans le *Guide de l’utilisateur IAM*.

### Rôles IAM
<a name="security_iam_authentication-iamrole"></a>

Un *[rôle IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* est une identité dotée d’autorisations spécifiques qui fournit des informations d’identification temporaires. Vous pouvez assumer un rôle en [passant d'un rôle d'utilisateur à un rôle IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) ou en appelant une opération d' AWS API AWS CLI ou d'API. Pour plus d’informations, consultez [Méthodes pour endosser un rôle](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) dans le *Guide de l’utilisateur IAM*.

Les rôles IAM sont utiles pour l’accès des utilisateurs fédérés, les autorisations temporaires des utilisateurs IAM, les accès intercompte, les accès entre services et les applications exécutées sur Amazon EC2. Pour plus d’informations, consultez [Accès intercompte aux ressources dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dans le *Guide de l’utilisateur IAM*.

## Gestion de l’accès à l’aide de politiques
<a name="security_iam_access-manage"></a>

Vous contrôlez l'accès en AWS créant des politiques et en les associant à AWS des identités ou à des ressources. Une politique définit les autorisations lorsqu'elles sont associées à une identité ou à une ressource. AWS évalue ces politiques lorsqu'un directeur fait une demande. La plupart des politiques sont stockées AWS sous forme de documents JSON. Pour plus d’informations les documents de politique JSON, consultez [Vue d’ensemble des politiques JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) dans le *Guide de l’utilisateur IAM*.

À l’aide de politiques, les administrateurs précisent qui a accès à quoi en définissant quel **principal** peut effectuer des **actions** sur quelles **ressources** et dans quelles **conditions**.

Par défaut, les utilisateurs et les rôles ne disposent d’aucune autorisation. Un administrateur IAM crée des politiques IAM et les ajoute aux rôles, que les utilisateurs peuvent ensuite assumer. Les politiques IAM définissent les autorisations quelle que soit la méthode que vous utilisez pour exécuter l’opération.

### Politiques basées sur l’identité
<a name="security_iam_access-manage-id-based-policies"></a>

Les stratégies basées sur l’identité sont des documents de stratégie d’autorisations JSON que vous attachez à une identité (utilisateur, groupe ou rôle). Ces politiques contrôlent les actions que peuvent exécuter ces identités, sur quelles ressources et dans quelles conditions. Pour découvrir comment créer une politique basée sur l’identité, consultez [Définition d’autorisations IAM personnalisées avec des politiques gérées par le client](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dans le *Guide de l’utilisateur IAM*.

Les politiques basées sur l’identité peuvent être des *politiques intégrées* (intégrées directement dans une seule identité) ou des *politiques gérées (politiques* autonomes associées à plusieurs identités). Pour découvrir comment choisir entre des politiques gérées et en ligne, consultez [Choix entre les politiques gérées et les politiques en ligne](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) dans le *Guide de l’utilisateur IAM*.

### Politiques basées sur les ressources
<a name="security_iam_access-manage-resource-based-policies"></a>

Les politiques basées sur les ressources sont des documents de politique JSON que vous attachez à une ressource. Les exemples incluent *les politiques de confiance de rôle* IAM et les *stratégies de compartiment* Amazon S3. Dans les services qui sont compatibles avec les politiques basées sur les ressources, les administrateurs de service peuvent les utiliser pour contrôler l’accès à une ressource spécifique. Vous devez [spécifier un principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) dans une politique basée sur les ressources.

Les politiques basées sur les ressources sont des politiques en ligne situées dans ce service. Vous ne pouvez pas utiliser les politiques AWS gérées par IAM dans une stratégie basée sur les ressources.

### Autres types de politique
<a name="security_iam_access-manage-other-policies"></a>

AWS prend en charge des types de politiques supplémentaires qui peuvent définir les autorisations maximales accordées par les types de politiques les plus courants :
+ **Limites d’autorisations** : une limite des autorisations définit le nombre maximum d’autorisations qu’une politique basée sur l’identité peut accorder à une entité IAM. Pour plus d’informations, consultez [Limites d’autorisations pour des entités IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) dans le *Guide de l’utilisateur IAM*.
+ **Politiques de contrôle des services (SCPs)** — Spécifiez les autorisations maximales pour une organisation ou une unité organisationnelle dans AWS Organizations. Pour plus d’informations, consultez [Politiques de contrôle de service](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) dans le *Guide de l’utilisateur AWS Organizations *.
+ **Politiques de contrôle des ressources (RCPs)** : définissez le maximum d'autorisations disponibles pour les ressources de vos comptes. Pour plus d'informations, voir [Politiques de contrôle des ressources (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) dans le *guide de AWS Organizations l'utilisateur*.
+ **Politiques de session** : politiques avancées que vous passez en tant que paramètre lorsque vous créez par programmation une session temporaire pour un rôle ou un utilisateur fédéré. Pour plus d’informations, consultez [Politiques de session](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) dans le *Guide de l’utilisateur IAM*.

### Plusieurs types de politique
<a name="security_iam_access-manage-multiple-policies"></a>

Lorsque plusieurs types de politiques s’appliquent à la requête, les autorisations en résultant sont plus compliquées à comprendre. Pour savoir comment AWS déterminer s'il faut autoriser une demande lorsque plusieurs types de politiques sont impliqués, consultez la section [Logique d'évaluation des politiques](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) dans le *guide de l'utilisateur IAM*.

## Contrôle d’accès
<a name="access-control-swf"></a>

Vous pouvez disposer d'informations d'identification valides pour authentifier vos demandes, mais vous ne pouvez pas créer de ressources Amazon SWF ou y accéder si vous ne disposez pas d'autorisations. Par exemple, vous devez être autorisé à invoquer AWS Lambda les cibles Amazon Simple Notification Service (Amazon SNS) et Amazon Simple Queue Service (Amazon SQS) associées à vos règles Amazon SWF.

Les sections suivantes décrivent comment gérer les autorisations pour Amazon SWF. Nous vous recommandons de lire d’abord la présentation.
+ [Principes de base](swf-dev-iam.basic.md)
+ [Politiques IAM d'Amazon SWF](swf-dev-iam.policies.md)
+ [Règles de rédaction pour Amazon SWF](swf-dev-iam.policies.md#swf-dev-iam.policies.examples)

## Actions politiques pour Amazon SWF
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

**Prend en charge les actions de politique :** oui

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément `Action` d’une politique JSON décrit les actions que vous pouvez utiliser pour autoriser ou refuser l’accès à une politique. Intégration d’actions dans une politique afin d’accorder l’autorisation d’exécuter les opérations associées.

Pour consulter la liste des actions Amazon SWF, consultez la section [Ressources définies par Amazon Simple Workflow Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsimpleworkflowservice.html#amazonsimpleworkflowservice-resources-for-iam-policies) dans la référence *d'autorisation du service*.

Les actions de politique dans Amazon SWF utilisent le préfixe suivant avant l'action :

```
swf
```

Pour indiquer plusieurs actions dans une seule déclaration, séparez-les par des virgules.

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

Pour consulter des exemples de politiques basées sur l'identité Amazon SWF, consultez. [Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service](security_iam_id-based-policy-examples.md)

## Ressources relatives aux politiques pour Amazon SWF
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

**Prend en charge les ressources de politique :** oui

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément de politique JSON `Resource` indique le ou les objets auxquels l’action s’applique. Il est recommandé de définir une ressource à l’aide de son [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Pour les actions qui ne sont pas compatibles avec les autorisations de niveau ressource, utilisez un caractère générique (\$1) afin d’indiquer que l’instruction s’applique à toutes les ressources.

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

Pour consulter la liste des types de ressources Amazon SWF et leurs caractéristiques ARNs, consultez la section [Actions définies par Amazon Simple Workflow Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsimpleworkflowservice.html#amazonsimpleworkflowservice-actions-as-permissions) dans la référence *d'autorisation du service*. Pour savoir avec quelles actions vous pouvez spécifier l'ARN de chaque ressource, consultez la section [Ressources définies par Amazon Simple Workflow Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsimpleworkflowservice.html#amazonsimpleworkflowservice-resources-for-iam-policies).

Pour consulter des exemples de politiques basées sur l'identité Amazon SWF, consultez. [Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service](security_iam_id-based-policy-examples.md)

## Clés de conditions de politique pour Amazon SWF
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

**Prend en charge les clés de condition de politique spécifiques au service :** oui

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément `Condition` indique à quel moment les instructions s’exécutent en fonction de critères définis. Vous pouvez créer des expressions conditionnelles qui utilisent des [opérateurs de condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), tels que les signes égal ou inférieur à, pour faire correspondre la condition de la politique aux valeurs de la demande. Pour voir toutes les clés de condition AWS globales, voir les clés de [contexte de condition AWS globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) dans le *guide de l'utilisateur IAM*.

Pour consulter la liste des clés de condition Amazon SWF, consultez la section Clés de [condition pour Amazon Simple Workflow Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsimpleworkflowservice.html#amazonsimpleworkflowservice-policy-keys) dans la référence *d'autorisation du service*. Pour savoir avec quelles actions et ressources vous pouvez utiliser une clé de condition, consultez la section [Ressources définies par Amazon Simple Workflow Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsimpleworkflowservice.html#amazonsimpleworkflowservice-resources-for-iam-policies).

Pour consulter des exemples de politiques basées sur l'identité Amazon SWF, consultez. [Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service](security_iam_id-based-policy-examples.md)

## ACLs dans Amazon SWF
<a name="security_iam_service-with-iam-acls"></a>

**Supports ACLs :** Non 

Les listes de contrôle d'accès (ACLs) contrôlent les principaux (membres du compte, utilisateurs ou rôles) autorisés à accéder à une ressource. ACLs sont similaires aux politiques basées sur les ressources, bien qu'elles n'utilisent pas le format de document de politique JSON.

## ABAC avec Amazon SWF
<a name="security_iam_service-with-iam-tags"></a>

**Prend en charge ABAC (identifications dans les politiques) :** partiellement

Le contrôle d’accès par attributs (ABAC) est une stratégie d’autorisation qui définit les autorisations en fonction des attributs nommés balise. Vous pouvez associer des balises aux entités et aux AWS ressources IAM, puis concevoir des politiques ABAC pour autoriser les opérations lorsque la balise du principal correspond à la balise de la ressource.

Pour contrôler l’accès basé sur des étiquettes, vous devez fournir les informations d’étiquette dans l’[élément de condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) d’une politique utilisant les clés de condition `aws:ResourceTag/key-name`, `aws:RequestTag/key-name` ou `aws:TagKeys`.

Si un service prend en charge les trois clés de condition pour tous les types de ressources, alors la valeur pour ce service est **Oui**. Si un service prend en charge les trois clés de condition pour certains types de ressources uniquement, la valeur est **Partielle**.

Pour plus d’informations sur ABAC, consultez [Définition d’autorisations avec l’autorisation ABAC](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) dans le *Guide de l’utilisateur IAM*. Pour accéder à un didacticiel décrivant les étapes de configuration de l’ABAC, consultez [Utilisation du contrôle d’accès par attributs (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html) dans le *Guide de l’utilisateur IAM*.

## Utilisation d'informations d'identification temporaires avec Amazon SWF
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

**Prend en charge les informations d’identification temporaires :** oui

Les informations d'identification temporaires fournissent un accès à court terme aux AWS ressources et sont automatiquement créées lorsque vous utilisez la fédération ou que vous changez de rôle. AWS recommande de générer dynamiquement des informations d'identification temporaires au lieu d'utiliser des clés d'accès à long terme. Pour plus d’informations, consultez [Informations d’identification de sécurité temporaires dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) et [Services AWS compatibles avec IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) dans le *Guide de l’utilisateur IAM*.

## Autorisations principales interservices pour Amazon SWF
<a name="security_iam_service-with-iam-principal-permissions"></a>

**Prend en charge les sessions d’accès direct (FAS) :** oui

 Les sessions d'accès direct (FAS) utilisent les autorisations du principal appelant et Service AWS, combinées Service AWS à la demande d'envoi de demandes aux services en aval. Pour plus de détails sur la politique relative à la transmission de demandes FAS, consultez la section [Sessions de transmission d’accès](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html). 

## Rôles de service pour Amazon SWF
<a name="security_iam_service-with-iam-roles-service"></a>

**Prend en charge les rôles de service :** oui

 Un rôle de service est un [rôle IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) qu’un service endosse pour accomplir des actions en votre nom. Un administrateur IAM peut créer, modifier et supprimer un rôle de service à partir d’IAM. Pour plus d’informations, consultez [Création d’un rôle pour la délégation d’autorisations à un Service AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) dans le *Guide de l’utilisateur IAM*. 

**Avertissement**  
La modification des autorisations associées à un rôle de service peut perturber les fonctionnalités d'Amazon SWF. Modifiez les rôles de service uniquement lorsque Amazon SWF fournit des instructions à cet effet.

## Rôles liés à un service pour Amazon SWF
<a name="security_iam_service-with-iam-roles-service-linked"></a>

**Prend en charge les rôles liés à un service :** non 

 Un rôle lié à un service est un type de rôle de service lié à un. Service AWS Le service peut endosser le rôle afin d’effectuer une action en votre nom. Les rôles liés à un service apparaissent dans votre Compte AWS répertoire et appartiennent au service. Un administrateur IAM peut consulter, mais ne peut pas modifier, les autorisations concernant les rôles liés à un service. 

Pour plus d’informations sur la création ou la gestion des rôles liés à un service, consultez [Services AWS qui fonctionnent avec IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html). Recherchez un service dans le tableau qui inclut un `Yes` dans la colonne **Rôle lié à un service**. Choisissez le lien **Oui** pour consulter la documentation du rôle lié à ce service.

## Politiques basées sur l'identité pour Amazon SWF
<a name="security_iam_service-with-iam-id-based-policies"></a>

**Prend en charge les politiques basées sur l’identité :** oui

Les politiques basées sur l’identité sont des documents de politique d’autorisations JSON que vous pouvez attacher à une identité telle qu’un utilisateur, un groupe d’utilisateurs ou un rôle IAM. Ces politiques contrôlent quel type d’actions des utilisateurs et des rôles peuvent exécuter, sur quelles ressources et dans quelles conditions. Pour découvrir comment créer une politique basée sur l’identité, consultez [Définition d’autorisations IAM personnalisées avec des politiques gérées par le client](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dans le *Guide de l’utilisateur IAM*.

Avec les politiques IAM basées sur l’identité, vous pouvez spécifier des actions et ressources autorisées ou refusées, ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. Pour découvrir tous les éléments que vous utilisez dans une politique JSON, consultez [Références des éléments de politique JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) dans le *Guide de l’utilisateur IAM*.

### Exemples de politiques basées sur l'identité pour Amazon SWF
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>

Pour consulter des exemples de politiques basées sur l'identité Amazon SWF, consultez. [Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service](security_iam_id-based-policy-examples.md)

## Politiques basées sur les ressources au sein d'Amazon SWF
<a name="security_iam_service-with-iam-resource-based-policies"></a>

**Prend en charge les politiques basées sur les ressources :** non 

Les politiques basées sur les ressources sont des documents de politique JSON que vous attachez à une ressource. Par exemple, les *politiques de confiance de rôle* IAM et les *politiques de compartiment* Amazon S3 sont des politiques basées sur les ressources. Dans les services qui sont compatibles avec les politiques basées sur les ressources, les administrateurs de service peuvent les utiliser pour contrôler l’accès à une ressource spécifique. Pour la ressource dans laquelle se trouve la politique, cette dernière définit quel type d’actions un principal spécifié peut effectuer sur cette ressource et dans quelles conditions. Vous devez [spécifier un principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) dans une politique basée sur les ressources. Les principaux peuvent inclure des comptes, des utilisateurs, des rôles, des utilisateurs fédérés ou. Services AWS

Pour permettre un accès intercompte, vous pouvez spécifier un compte entier ou des entités IAM dans un autre compte en tant que principal dans une politique basée sur les ressources. Pour plus d’informations, consultez [Accès intercompte aux ressources dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dans le *Guide de l’utilisateur IAM*.

# Comment Amazon Simple Workflow Service fonctionne avec IAM
<a name="security_iam_service-with-iam"></a>

Avant d'utiliser IAM pour gérer l'accès à Amazon SWF, découvrez quelles fonctionnalités IAM peuvent être utilisées avec Amazon SWF.


**Fonctionnalités IAM que vous pouvez utiliser avec Amazon Simple Workflow Service**  

| Fonctionnalité IAM | Prise en charge d'Amazon SWF | 
| --- | --- | 
|  [Politiques basées sur l’identité](swf-dev-iam.md#security_iam_service-with-iam-id-based-policies)  |   Oui  | 
|  [Politiques basées sur les ressources](swf-dev-iam.md#security_iam_service-with-iam-resource-based-policies)  |   Non   | 
|  [Actions de politique](swf-dev-iam.md#security_iam_service-with-iam-id-based-policies-actions)  |   Oui  | 
|  [Ressources de politique](swf-dev-iam.md#security_iam_service-with-iam-id-based-policies-resources)  |   Oui  | 
|  [Clés de condition de politique (spécifiques au service)](swf-dev-iam.md#security_iam_service-with-iam-id-based-policies-conditionkeys)  |   Oui  | 
|  [ACLs](swf-dev-iam.md#security_iam_service-with-iam-acls)  |   Non   | 
|  [ABAC (identifications dans les politiques)](swf-dev-iam.md#security_iam_service-with-iam-tags)  |   Partielle  | 
|  [Informations d’identification temporaires](swf-dev-iam.md#security_iam_service-with-iam-roles-tempcreds)  |   Oui  | 
|  [Autorisations de principal](swf-dev-iam.md#security_iam_service-with-iam-principal-permissions)  |   Oui  | 
|  [Rôles de service](swf-dev-iam.md#security_iam_service-with-iam-roles-service)  |   Oui  | 
|  [Rôles liés à un service](swf-dev-iam.md#security_iam_service-with-iam-roles-service-linked)  |   Non   | 

*Pour obtenir une vue d'ensemble de la façon dont Amazon SWF et les autres AWS services fonctionnent avec la plupart des fonctionnalités IAM, consultez les [AWS services compatibles avec IAM dans le guide de l'utilisateur IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html).*

# Exemples de politiques basées sur l'identité pour Amazon Simple Workflow Service
<a name="security_iam_id-based-policy-examples"></a>

Par défaut, les utilisateurs et les rôles ne sont pas autorisés à créer ou à modifier des ressources Amazon SWF. Pour octroyer aux utilisateurs des autorisations d’effectuer des actions sur les ressources dont ils ont besoin, un administrateur IAM peut créer des politiques IAM.

Pour apprendre à créer une politique basée sur l’identité IAM à l’aide de ces exemples de documents de politique JSON, consultez [Création de politiques IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) dans le *Guide de l’utilisateur IAM*.

Pour plus de détails sur les actions et les types de ressources définis par Amazon SWF, y compris le format de chaque type de ressource, consultez la section [Actions, ressources et clés de condition ARNs pour Amazon Simple Workflow Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsimpleworkflowservice.html) dans la référence *d'autorisation du service*.

**Topics**
+ [Bonnes pratiques en matière de politiques](#security_iam_service-with-iam-policy-best-practices)
+ [Utilisation de la console Amazon SWF](#security_iam_id-based-policy-examples-console)
+ [Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations](#security_iam_id-based-policy-examples-view-own-permissions)

## Bonnes pratiques en matière de politiques
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Les politiques basées sur l'identité déterminent si quelqu'un peut créer, accéder ou supprimer des ressources Amazon SWF dans votre compte. Ces actions peuvent entraîner des frais pour votre Compte AWS. Lorsque vous créez ou modifiez des politiques basées sur l’identité, suivez ces instructions et recommandations :
+ **Commencez AWS par les politiques gérées et passez aux autorisations du moindre privilège : pour commencer à accorder des autorisations** à vos utilisateurs et à vos charges de travail, utilisez les *politiques AWS gérées* qui accordent des autorisations pour de nombreux cas d'utilisation courants. Ils sont disponibles dans votre Compte AWS. Nous vous recommandons de réduire davantage les autorisations en définissant des politiques gérées par les AWS clients spécifiques à vos cas d'utilisation. Pour plus d’informations, consultez [politiques gérées par AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) ou [politiques gérées par AWS pour les activités professionnelles](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) dans le *Guide de l’utilisateur IAM*.
+ **Accordez les autorisations de moindre privilège** : lorsque vous définissez des autorisations avec des politiques IAM, accordez uniquement les autorisations nécessaires à l’exécution d’une seule tâche. Pour ce faire, vous définissez les actions qui peuvent être entreprises sur des ressources spécifiques dans des conditions spécifiques, également appelées *autorisations de moindre privilège*. Pour plus d’informations sur l’utilisation d’IAM pour appliquer des autorisations, consultez [politiques et autorisations dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dans le *Guide de l’utilisateur IAM*.
+ **Utilisez des conditions dans les politiques IAM pour restreindre davantage l’accès** : vous pouvez ajouter une condition à vos politiques afin de limiter l’accès aux actions et aux ressources. Par exemple, vous pouvez écrire une condition de politique pour spécifier que toutes les demandes doivent être envoyées via SSL. Vous pouvez également utiliser des conditions pour accorder l'accès aux actions de service si elles sont utilisées par le biais d'un service spécifique Service AWS, tel que CloudFormation. Pour plus d’informations, consultez [Conditions pour éléments de politique JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dans le *Guide de l’utilisateur IAM*.
+ **Utilisez l’Analyseur d’accès IAM pour valider vos politiques IAM afin de garantir des autorisations sécurisées et fonctionnelles** : l’Analyseur d’accès IAM valide les politiques nouvelles et existantes de manière à ce que les politiques IAM respectent le langage de politique IAM (JSON) et les bonnes pratiques IAM. IAM Access Analyzer fournit plus de 100 vérifications de politiques et des recommandations exploitables pour vous aider à créer des politiques sécurisées et fonctionnelles. Pour plus d’informations, consultez [Validation de politiques avec IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) dans le *Guide de l’utilisateur IAM*.
+ **Exiger l'authentification multifactorielle (MFA**) : si vous avez un scénario qui nécessite des utilisateurs IAM ou un utilisateur root, activez l'authentification MFA pour une sécurité accrue. Compte AWS Pour exiger la MFA lorsque des opérations d’API sont appelées, ajoutez des conditions MFA à vos politiques. Pour plus d’informations, consultez [Sécurisation de l’accès aux API avec MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) dans le *Guide de l’utilisateur IAM*.

Pour plus d’informations sur les bonnes pratiques dans IAM, consultez [Bonnes pratiques de sécurité dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dans le *Guide de l’utilisateur IAM*.

## Utilisation de la console Amazon SWF
<a name="security_iam_id-based-policy-examples-console"></a>

Pour accéder à la console Amazon Simple Workflow Service, vous devez disposer d'un ensemble minimal d'autorisations. Ces autorisations doivent vous permettre de répertorier et de consulter les informations relatives aux ressources Amazon SWF présentes dans votre. Compte AWS Si vous créez une politique basée sur l’identité qui est plus restrictive que l’ensemble minimum d’autorisations requis, la console ne fonctionnera pas comme prévu pour les entités (utilisateurs ou rôles) tributaires de cette politique.

Il n'est pas nécessaire d'accorder des autorisations de console minimales aux utilisateurs qui appellent uniquement l'API AWS CLI ou l' AWS API. Autorisez plutôt l’accès à uniquement aux actions qui correspondent à l’opération d’API qu’ils tentent d’effectuer.

Pour garantir que les utilisateurs et les rôles peuvent toujours utiliser la console Amazon SWF, associez également Amazon `ConsoleAccess` SWF `ReadOnly` AWS ou la politique gérée aux entités. Pour plus d’informations, consultez [Ajout d’autorisations à un utilisateur](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) dans le *Guide de l’utilisateur IAM*.

## Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Cet exemple montre comment créer une politique qui permet aux utilisateurs IAM d’afficher les politiques en ligne et gérées attachées à leur identité d’utilisateur. Cette politique inclut les autorisations permettant d'effectuer cette action sur la console ou par programmation à l'aide de l'API AWS CLI or 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": "*"
        }
    ]
}
```

# Principes de base
<a name="swf-dev-iam.basic"></a>

Le contrôle d'accès Amazon SWF repose principalement sur deux types d'autorisations :
+ Autorisations relatives aux ressources : quelles ressources Amazon SWF un utilisateur peut accéder.

  Vous pouvez uniquement exprimer des autorisations de ressources pour les domaines.
+ Autorisations d'API : quelles actions Amazon SWF un utilisateur peut appeler.

L'approche la plus simple consiste à accorder un accès complet au compte, c'est-à-dire à lancer n'importe quelle action Amazon SWF dans n'importe quel domaine, ou à refuser complètement l'accès. Cependant, IAM soutient une approche plus précise du contrôle d'accès, qui est souvent plus utile. Par exemple, vous pouvez accorder les accès suivants : 
+ Permettez à un utilisateur d'appeler n'importe quelle action Amazon SWF sans restrictions, mais uniquement dans un domaine spécifique. Vous pouvez utiliser cette stratégie pour permettre aux applications de flux de travail qui sont en cours de développement d'utiliser toutes les actions, mais uniquement dans un domaine « sandbox ».
+ Autorisez un utilisateur à accéder à n'importe quel domaine, mais limitez la façon dont il utilise l'API. Vous pouvez tirer parti de cette stratégie pour permettre à une application d'« audit » d'appeler l'API dans n'importe quel domaine, mais uniquement en lecture seule.
+ Autorisez un utilisateur à appeler uniquement un ensemble limité d'actions dans certains domaines. Vous pouvez recourir à cette stratégie pour permettre à un démarreur de flux de travail d'appeler uniquement l'action `StartWorkflowExecution` dans un domaine spécifié.

Le contrôle d'accès Amazon SWF repose sur les principes suivants :
+ Les décisions de contrôle d'accès sont basées uniquement sur les politiques IAM ; tous les audits et manipulations des politiques sont effectués via IAM.
+ Le modèle de contrôle d'accès utilise une deny-by-default politique ; tout accès non explicitement autorisé est refusé. 
+ Vous contrôlez l'accès aux ressources Amazon SWF en associant les politiques IAM appropriées aux acteurs du flux de travail.
+ Vous pouvez uniquement exprimer des autorisations de ressources pour les domaines.
+ Pour limiter davantage l'utilisation de certaines actions, vous pouvez appliquer des conditions à un ou plusieurs paramètres.
+ Si vous accordez l'autorisation d'utilisation [RespondDecisionTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html), vous pouvez exprimer des autorisations pour la liste des décisions incluses dans cette action.

  Chacune des décisions a un ou plusieurs paramètres, tout comme un appel d'API classique. Pour que les stratégies soient aussi lisibles que possible, vous pouvez exprimer des autorisations au niveau des décisions comme s'il s'agissait d'appels d'API réels, y compris en appliquant des conditions à certains paramètres. Ces types d'autorisations sont des autorisations de *pseudo-API*.

Pour afficher un résumé des paramètres qui peuvent être limités à l'aide de conditions pour l'API classique et la pseudo-API, consultez la section [Récapitulatif API](swf-dev-iam.api.md).

# Politiques IAM d'Amazon SWF
<a name="swf-dev-iam.policies"></a>

Une politique IAM contient un ou plusieurs `Statement` éléments, chacun contenant un ensemble d'éléments qui définissent la stratégie. Pour une liste complète des éléments et une discussion générale sur la façon de créer des politiques, voir [The Access Policy Language](https://docs.aws.amazon.com/IAM/latest/UserGuide/AccessPolicyLanguage.html). Le contrôle d'accès Amazon SWF repose sur les éléments suivants :

Effet  
[Obligatoire] L'effet de l'instruction : `deny` ou `allow`.  
Vous devez autoriser l'accès de manière explicite ; IAM refuse l'accès par défaut.

Ressource  
(Obligatoire) La ressource (entité d'un AWS service avec laquelle un utilisateur peut interagir) à laquelle s'applique l'instruction.  
Vous pouvez uniquement exprimer des autorisations de ressources pour les domaines. Par exemple, une stratégie peut autoriser l'accès à seulement certains domaines de votre compte. Pour exprimer des autorisations pour un domaine, définissez `Resource` le nom de ressource Amazon (ARN) du domaine, au format « arn:aws:swf : : : *Region* /domain/ ». *AccountID* *DomainName* *Region*est la AWS région, *AccountID* l'identifiant du compte sans tiret et *DomainName* le nom de domaine.

Action  
(Obligatoire) L'action à laquelle s'applique l'instruction, à laquelle vous faites référence en utilisant le format suivant : *serviceId* :*action*. Pour Amazon SWF, définissez sur*serviceID*. `swf` Par exemple, `swf:StartWorkflowExecution` fait référence à l'[StartWorkflowExecution](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_StartWorkflowExecution.html)action et est utilisé pour contrôler quels utilisateurs sont autorisés à démarrer des flux de travail.  
 Si vous accordez l'autorisation d'utilisation [RespondDecisionTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html), vous pouvez également contrôler l'accès à la liste de décisions incluse en utilisant `Action` pour exprimer les autorisations pour la pseudo-API. Comme IAM refuse l'accès par défaut, la décision d'un décideur doit être explicitement autorisée, sinon elle ne sera pas acceptée. Vous pouvez utiliser la valeur `*` pour autoriser toutes les décisions.

Condition  
(Facultatif) Exprime une contrainte au niveau d'un ou de plusieurs paramètres d'action, ce qui limite les valeurs acceptées.  
Les actions Amazon SWF ont souvent une portée étendue, que vous pouvez réduire en utilisant les conditions IAM. Par exemple, pour limiter les listes de tâches auxquelles l'[PollForActivityTask](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_PollForActivityTask.html)action est autorisée à accéder, vous devez inclure un `Condition` et utiliser la `swf:taskList.name` clé pour spécifier les listes autorisées.   
Vous pouvez exprimer des contraintes pour les entités suivantes.  
+ Le type de flux de travail Le nom et la version ont des clés distinctes.
+ Le type d'activité. Le nom et la version ont des clés distinctes.
+ Les listes de tâches.
+ Balises. Vous pouvez spécifier plusieurs balises pour certaines actions. Dans ce cas, chaque balise possède une clé distincte.
Pour Amazon SWF, les valeurs sont toutes des chaînes. Vous pouvez donc contraindre un paramètre à l'aide d'un opérateur de chaîne tel que`StringEquals`, qui limite le paramètre à une chaîne spécifiée. Toutefois, avec les opérateurs de comparaison de chaîne habituels comme `StringEquals`, toutes les requête doivent inclure le paramètre. Si vous n'incluez pas le paramètre explicitement et s'il n'existe aucune valeur par défaut, telle que la liste de tâches par défaut fournie lors de l'enregistrement du type, l'accès est refusé.  
Il est souvent utile de traiter les conditions comme étant facultatives. De la sorte, vous pouvez appeler une action sans être obligé d'inclure le paramètre associé. Par exemple, vous pouvez autoriser un décideur à spécifier un ensemble de [RespondDecisionTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html)décisions, mais également à n'en spécifier qu'une pour un appel en particulier. Dans ce cas, utilisez un opérateur `StringEqualsIfExists` pour limiter les paramètres appropriés, afin d'autoriser l'accès si le paramètre satisfait à la condition, sans toutefois refuser l'accès si le paramètre est absent.
Pour obtenir une liste complète des paramètres que vous pouvez restreindre et des clés associées, consultez la section [Récapitulatif API](swf-dev-iam.api.md).

La section suivante fournit des exemples de création de politiques Amazon SWF. Pour plus d'informations, consultez la section [Conditions de chaîne](https://docs.aws.amazon.com/IAM/latest/UserGuide/AccessPolicyLanguage_ElementDescriptions.html#AccessPolicyLanguage_ConditionType). 

## Règles de rédaction pour Amazon SWF
<a name="swf-dev-iam.policies.examples"></a>

Un flux de travail est composé de plusieurs *acteurs* : activités, décideurs, etc. Vous pouvez contrôler l'accès de chaque acteur en attachant une politique IAM appropriée.

Avec l'action suivante, l'acteur aura un accès complet à son compte dans toutes les régions :
+ **Action :** `swf:*`
+ **Ressource** : `arn:aws:swf:*:123456789012:/domain/*`

 Vous pouvez utiliser des caractères génériques de sorte qu'une valeur unique représente plusieurs ressources, actions ou régions.
+ Le premier caractère générique (`*`) de la `Resource` valeur indique que les autorisations relatives aux ressources s'appliquent à toutes les **régions**. 

  Pour limiter les autorisations à une seule région, remplacez le caractère générique par la chaîne de région appropriée, telle que us-east-1. 
+ Le deuxième caractère générique (`*`) dans la valeur `Resource` permet à l'acteur d'accéder à tous les domaines du compte dans les régions spécifiées.
+ Le caractère générique (`*`) contenu dans la `Action` valeur permet à l'acteur d'appeler n'importe quelle action Amazon SWF. 

Pour plus d'informations sur la façon d'utiliser les caractères génériques, consultez la page [Descriptions d'élément](https://docs.aws.amazon.com/IAM/latest/UserGuide/AccessPolicyLanguage_ElementDescriptions.html).

### Autorisations de domaine
<a name="swf-dev-iam.policies.examples.domain"></a>

Pour restreindre les flux de travail d'un département à un domaine spécifique, vous pouvez accorder une autorisation permettant à un acteur de prendre n'importe quelle action, mais uniquement pour un département spécifique. 

Pour accorder à un acteur l'accès à plusieurs domaines, exprimez l'autorisation pour chaque domaine sous forme de liste de déclarations :
+ **Action :** `swf:*`
+ **Ressource** : `arn:aws:swf:*:123456789012:/domain/department1` 
+ **Ressource** : `arn:aws:swf:*:123456789012:/domain/department2` 

Vous pouvez autoriser un acteur à utiliser n'importe quelle action Amazon SWF dans les domaines `department1` et`department2`. Vous pouvez aussi parfois utiliser des caractères génériques pour représenter plusieurs domaines. 

### Contraintes et autorisations de l'API
<a name="swf-dev-iam.policies.examples.api"></a>

Vous pouvez contrôler les **actions** qu'un acteur peut utiliser en spécifiant l'action dans l'`Action`élément. 

Avec l'action suivante, un acteur ne peut appeler que `StartWorkflowExecution` pour démarrer des flux de travail. Il ne peut utiliser aucune autre action.
+ **Action :** `swf:StartWorkflowExecution` 

**Conditions**  
Vous pouvez éventuellement limiter les valeurs de paramètres autorisées de l'action en utilisant un `Condition` élément.

Pour limiter les flux de travail qu'un acteur peut démarrer, limitez une ou plusieurs valeurs de `StartWorkflowExecution` paramètres, comme suit :

```
"Condition" : {
   "StringEquals" : { 
      "swf:workflowType.name" : "workflow1",
      "swf:workflowType.version" : "version2" 
    }
}
```

Un acteur avec les contraintes précédentes ne peut fonctionner que `version2` `workflow1` et les deux paramètres doivent être inclus dans la demande.

Pour limiter un paramètre sans nécessiter sa présence dans une requête, utilisez un opérateur `StringEqualsIfExists`, comme suit :

```
"Condition" : {
   "StringEqualsIfExists" : { "swf:taskList.name" : "task_list_name" }
}
```

Un acteur doté de la politique précédente peut éventuellement spécifier une liste de tâches lorsqu'il lance l'exécution d'un flux de travail.

Vous pouvez limiter la liste des balises pour certaines actions. Chaque balise possède une clé distincte. Vous pouvez donc l'utiliser `swf:tagList.member.0` pour contraindre la première balise de la liste, `swf:tagList.member.1` pour contraindre la deuxième balise de la liste, etc., jusqu'à un maximum de 5. 

Vous devez faire attention à la manière dont vous limitez les listes de balises. Par exemple, la condition suivante ***n'est pas*** recommandée. 

La condition suivante **n'est pas** recommandée car elle vous permet de spécifier éventuellement l'un `some_ok_tag` ou l'autre`another_ok_tag`. Toutefois, la condition limite uniquement le **premier élément** de la liste de balises. La liste peut contenir des éléments supplémentaires avec des valeurs arbitraires qui seraient tous autorisés car la condition ne s'applique à aucune condition `swf:tagList.member.1``swf:tagList.member.2`, etc.

```
// Example to illustrate an insecure Condition
"Condition" : {
   "StringEqualsIfExists" : {
      "swf:tagList.member.0" : "some_ok_tag", "another_ok_tag"
   }
}
```

L'un des moyens de résoudre le problème précédent consiste à interdire l'utilisation de listes de balises. 

La stratégie suivante garantit que seulement `some_ok_tag` ou `another_ok_tag` sont autorisés en imposant un seul élément dans la liste.

```
"Condition" : {
   "StringEqualsIfExists" : {
      "swf:tagList.member.0" : "some_ok_tag", "another_ok_tag"
    },
    "Null" : { "swf:tagList.member.1" : "true" }
}
```

### Contraintes et autorisations de pseudo-API
<a name="pseudo-api-permissions-constraints"></a>

Pour limiter les décisions disponibles`RespondDecisionTaskCompleted`, vous devez d'abord autoriser l'acteur à appeler`RespondDecisionTaskCompleted`. Vous exprimez ensuite les autorisations pour les pseudo-membres d'API appropriés en utilisant la même syntaxe que pour l'API normale, comme suit :
+ **Déclaration 1**

  **Ressource** : `arn:aws:swf:*:123456789012:/domain/*` 

  **Action :** `swf:RespondDecisionTaskCompleted` 
+ **Déclaration 2**

  **Ressource** : `*` 

  **Action :** `swf:ScheduleActivityTask` 

  **État** : ` "StringEquals" : { "swf:activityType.name" : "SomeActivityType" }` 

Le premier `Statement` permet à l'acteur d'appeler`RespondDecisionTaskCompleted`. La deuxième déclaration permet à l'acteur d'utiliser la `ScheduleActivityTask` décision de demander à Amazon SWF de planifier une tâche d'activité. Pour autoriser toutes les décisions, remplacez « swf : ScheduleActivityTask » par « swf : \$1 ».

Vous pouvez utiliser des opérateurs de condition pour limiter les paramètres, tout comme avec l'API classique. Dans `StringEquals` l'exemple précédent, l'opérateur `Condition` `RespondDecisionTaskCompleted` permet de planifier une tâche d'activité pour cette `SomeActivityType` activité, et il doit planifier cette tâche. Si vous voulez autoriser `RespondDecisionTaskCompleted` à utiliser une valeur de paramètre sans qu'elle ne soit obligatoire, vous pouvez utiliser l'opérateur `StringEqualsIfExists` à la place.

## AWS politique gérée : SimpleWorkflowFullAccess
<a name="swf-full-accss-mngd-policy"></a>

Vous pouvez associer la politique `SimpleWorkflowFullAccess` à vos identités IAM.

Cette politique fournit un accès complet au service de configuration Amazon SWF.

## Limitations du modèle de service sur les politiques IAM
<a name="swf-dev-iam.policies.allowed"></a>

Vous devez tenir compte des contraintes du modèle de service lorsque vous créez des politiques IAM. Il est possible de créer une politique IAM syntaxiquement valide qui représente une demande Amazon SWF non valide ; une demande autorisée en termes de contrôle d'accès peut toujours échouer car elle n'est pas valide. 

Par exemple, le modèle de service Amazon SWF **n'autorise pas** l'utilisation `typeFilter` des `tagFilter` paramètres et dans la même `[ListOpenWorkflowExecutions](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListOpenWorkflowExecutions.html)` demande. La condition suivante autoriserait les appels que le service rejettera (en lançant) en `ValidationException` tant que demande non valide :

```
"Condition" : {
   "StringEquals" : { 
      "swf:typeFilter.name" : "workflow_name",
      "swf:typeFilter.version" : "workflow_version",
      "swf:tagFilter.tag" : "some_tag" 
    }
}
```

# Récapitulatif API
<a name="swf-dev-iam.api"></a>

Cette section décrit brièvement comment vous pouvez utiliser les politiques IAM pour contrôler la manière dont un acteur peut utiliser chaque API et pseudo API pour accéder aux ressources Amazon SWF.
+ Pour toutes les actions (sauf `RegisterDomain` et `ListDomains`), vous pouvez exprimer des autorisations pour la ressource de domaine afin d'autoriser ou de refuser l'accès à tout ou partie des domaines d'un compte. 
+ Vous pouvez autoriser ou refuser l'accès pour n'importe quel membre de l'API classique et, si vous accordez l'autorisation d'appeler `[RespondDecisionTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html)`, pour n'importe quel membre de la pseudo-API. 
+ Vous pouvez utiliser une condition pour limiter les valeurs autorisées de certains paramètres.

Les sections suivantes répertorient les paramètres que vous pouvez limiter pour chaque membre de l'API classique ou de la pseudo-API. Elles fournissent également la clé associée et indiquent les limitations vous permettant de contrôler l'accès au domaine. 

## API classique
<a name="swf-dev-iam.api.regular"></a>

Cette section répertorie les membres de l'API classique et décrit brièvement les paramètres qui peuvent être limités, ainsi que les clés associées. Elle indique également les limitations liées à la façon dont vous pouvez contrôler l'accès au domaine.

`[CountClosedWorkflowExecutions](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountClosedWorkflowExecutions.html)`
+ `tagFilter.tag`— Contrainte de chaîne. La clé est `swf:tagFilter.tag`.
+ `typeFilter.name`— Contrainte de chaîne. La clé est `swf:typeFilter.name`.
+ `typeFilter.version`— Contrainte de chaîne. La clé est `swf:typeFilter.version`. 

**Note**  
`CountClosedWorkflowExecutions` exige que `typeFilter` et `tagFilter` soient mutuellement exclusifs.

`[CountOpenWorkflowExecutions](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountOpenWorkflowExecutions.html)`
+ `tagFilter.tag`— Contrainte de chaîne. La clé est `swf:tagFilter.tag`.
+ `typeFilter.name`— Contrainte de chaîne. La clé est `swf:typeFilter.name`.
+ `typeFilter.version`— Contrainte de chaîne. La clé est `swf:typeFilter.version`. 

**Note**  
`CountOpenWorkflowExecutions` exige que `typeFilter` et `tagFilter` soient mutuellement exclusifs.

`[CountPendingActivityTasks](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountPendingActivityTasks.html)`
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.

`[CountPendingDecisionTasks](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountPendingDecisionTasks.html)`
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.

`[DeleteActivityType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeleteActivityType.html)`
+ `activityType.name`— Contrainte de chaîne. La clé est `swf:activityType.name`.
+ `activityType.version`— Contrainte de chaîne. La clé est `swf:activityType.version`.

`[DeprecateActivityType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeprecateActivityType.html)`
+ `activityType.name`— Contrainte de chaîne. La clé est `swf:activityType.name`.
+ `activityType.version`— Contrainte de chaîne. La clé est `swf:activityType.version`.

`[DeprecateDomain](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeprecateDomain.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[DeleteWorkflowType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeleteWorkflowType.html)`
+ `workflowType.name`— Contrainte de chaîne. La clé est `swf:workflowType.name`.
+ `workflowType.version`— Contrainte de chaîne. La clé est `swf:workflowType.version`. 

`[DeprecateWorkflowType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeprecateWorkflowType.html)`
+ `workflowType.name`— Contrainte de chaîne. La clé est `swf:workflowType.name`.
+ `workflowType.version`— Contrainte de chaîne. La clé est `swf:workflowType.version`. 

`[DescribeActivityType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeActivityType.html)`
+ `activityType.name`— Contrainte de chaîne. La clé est `swf:activityType.name`.
+ `activityType.version`— Contrainte de chaîne. La clé est `swf:activityType.version`.

`[DescribeDomain](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeDomain.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[DescribeWorkflowExecution](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeWorkflowExecution.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[DescribeWorkflowType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeWorkflowType.html)`
+ `workflowType.name`— Contrainte de chaîne. La clé est `swf:workflowType.name`.
+ `workflowType.version`— Contrainte de chaîne. La clé est `swf:workflowType.version`.

`[GetWorkflowExecutionHistory](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_GetWorkflowExecutionHistory.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[ListActivityTypes](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListActivityTypes.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[ListClosedWorkflowExecutions](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListClosedWorkflowExecutions.html)`
+ `tagFilter.tag`— Contrainte de chaîne. La clé est `swf:tagFilter.tag`.
+ `typeFilter.name`— Contrainte de chaîne. La clé est `swf:typeFilter.name`.
+ `typeFilter.version`— Contrainte de chaîne. La clé est `swf:typeFilter.version`. 

**Note**  
`ListClosedWorkflowExecutions` exige que `typeFilter` et `tagFilter` soient mutuellement exclusifs.

`[ListDomains](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListDomains.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[ListOpenWorkflowExecutions](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListOpenWorkflowExecutions.html)`
+ `tagFilter.tag`— Contrainte de chaîne. La clé est `swf:tagFilter.tag`.
+ `typeFilter.name`— Contrainte de chaîne. La clé est `swf:typeFilter.name`.
+ `typeFilter.version`— Contrainte de chaîne. La clé est `swf:typeFilter.version`. 

**Note**  
`ListOpenWorkflowExecutions` exige que `typeFilter` et `tagFilter` soient mutuellement exclusifs.

`[ListWorkflowTypes](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListWorkflowTypes.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[PollForActivityTask](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_PollForActivityTask.html)`
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.

`[PollForDecisionTask](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_PollForDecisionTask.html)`
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.

`[RecordActivityTaskHeartbeat](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RecordActivityTaskHeartbeat.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[RegisterActivityType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RegisterActivityType.html)`
+ `defaultTaskList.name`— Contrainte de chaîne. La clé est `swf:defaultTaskList.name`. 
+ `name`— Contrainte de chaîne. La clé est `swf:name`.
+ `version`— Contrainte de chaîne. La clé est `swf:version`.

`[RegisterDomain](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RegisterDomain.html)`
+ `name`— Le nom du domaine en cours d'enregistrement est disponible en tant que ressource de cette action. 

`[RegisterWorkflowType](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RegisterWorkflowType.html)`
+ `defaultTaskList.name`— Contrainte de chaîne. La clé est `swf:defaultTaskList.name`. 
+ `name`— Contrainte de chaîne. La clé est `swf:name`.
+ `version`— Contrainte de chaîne. La clé est `swf:version`.

`[RequestCancelWorkflowExecution](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RequestCancelWorkflowExecution.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[RespondActivityTaskCanceled](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondActivityTaskCanceled.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[RespondActivityTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondActivityTaskCompleted.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[RespondActivityTaskFailed](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondActivityTaskFailed.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[RespondDecisionTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html)`
+ `decisions.member.N`— Limité indirectement par le biais de pseudo-autorisations d'API. Pour en savoir plus, consultez [Pseudo-API](#swf-dev-iam.api.pseudo).

`[SignalWorkflowExecution](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_SignalWorkflowExecution.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`[StartWorkflowExecution](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_StartWorkflowExecution.html)`
+ `tagList.member.0`— Contrainte de chaîne. La clé est `swf:tagList.member.0`.
+ `tagList.member.1`— Contrainte de chaîne. La clé est `swf:tagList.member.1`.
+ `tagList.member.2`— Contrainte de chaîne. La clé est `swf:tagList.member.2`.
+ `tagList.member.3`— Contrainte de chaîne. La clé est `swf:tagList.member.3`.
+ `tagList.member.4`— Contrainte de chaîne. La clé est `swf:tagList.member.4`.
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.
+ `workflowType.name`— Contrainte de chaîne. La clé est `swf:workflowType.name`.
+ `workflowType.version`— Contrainte de chaîne. La clé est `swf:workflowType.version`.

**Note**  
Vous ne pouvez pas limiter plus de cinq balises.

`[TerminateWorkflowExecution](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_TerminateWorkflowExecution.html)`
+ Vous ne pouvez pas limiter les paramètres de cette action.

## Pseudo-API
<a name="swf-dev-iam.api.pseudo"></a>

Cette section répertorie les membres de la pseudo-API, qui représentent les décisions incluses dans `[RespondDecisionTaskCompleted](https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html)`. Si vous avez accordé l'autorisation d'utiliser `RespondDecisionTaskCompleted`, la stratégie peut exprimer des autorisations pour les membres de cette API de la même manière que l'API classique. Pour restreindre davantage certains membres de la pseudo-API, vous pouvez définir des conditions au niveau d'un ou de plusieurs paramètres. Cette section répertorie les membres de la pseudo-API et décrit brièvement les paramètres qui peuvent être limités, ainsi que les clés associées.

**Note**  
Les clés `aws:SourceIP`, `aws:UserAgent` et `aws:SecureTransport` ne sont pas disponibles pour la pseudo-API. Si la stratégie de sécurité prévue nécessite que ces clés contrôlent l'accès à la pseudo-API, vous pouvez les utiliser avec l'action `RespondDecisionTaskCompleted`. 

`CancelTimer`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`CancelWorkflowExecution`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`CompleteWorkflowExecution`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`ContinueAsNewWorkflowExecution`
+ `tagList.member.0`— Contrainte de chaîne. La clé est `swf:tagList.member.0`.
+ `tagList.member.1`— Contrainte de chaîne. La clé est `swf:tagList.member.1`.
+ `tagList.member.2`— Contrainte de chaîne. La clé est `swf:tagList.member.2`.
+ `tagList.member.3`— Contrainte de chaîne. La clé est `swf:tagList.member.3`.
+ `tagList.member.4`— Contrainte de chaîne. La clé est `swf:tagList.member.4`.
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.
+ `workflowTypeVersion`— Contrainte de chaîne. La clé est `swf:workflowTypeVersion`.

**Note**  
Vous ne pouvez pas limiter plus de cinq balises.

`FailWorkflowExecution`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`RecordMarker`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`RequestCancelActivityTask`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`RequestCancelExternalWorkflowExecution`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`ScheduleActivityTask`
+ `activityType.name`— Contrainte de chaîne. La clé est `swf:activityType.name`.
+ `activityType.version`— Contrainte de chaîne. La clé est `swf:activityType.version`.
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.

`SignalExternalWorkflowExecution`
+ Vous ne pouvez pas limiter les paramètres de cette action.

`StartChildWorkflowExecution`
+ `tagList.member.0`— Contrainte de chaîne. La clé est `swf:tagList.member.0`.
+ `tagList.member.1`— Contrainte de chaîne. La clé est `swf:tagList.member.1`.
+ `tagList.member.2`— Contrainte de chaîne. La clé est `swf:tagList.member.2`.
+ `tagList.member.3`— Contrainte de chaîne. La clé est `swf:tagList.member.3`.
+ `tagList.member.4`— Contrainte de chaîne. La clé est `swf:tagList.member.4`.
+ `taskList.name`— Contrainte de chaîne. La clé est `swf:taskList.name`.
+ `workflowType.name`— Contrainte de chaîne. La clé est `swf:workflowType.name`.
+ `workflowType.version`— Contrainte de chaîne. La clé est `swf:workflowType.version`.

**Note**  
Vous ne pouvez pas limiter plus de cinq balises.

`StartTimer`
+ Vous ne pouvez pas limiter les paramètres de cette action.

# Stratégies basées sur des balises
<a name="tag-based-policies"></a>

Amazon SWF prend en charge les politiques basées sur les balises. Par exemple, vous pouvez restreindre les domaines Amazon SWF qui incluent une balise avec la clé `environment` et la valeur `production` avec la condition suivante :

```
"Condition": {
    "StringEquals": {"aws:ResourceTag/environment": "production"}
}
```

Pour plus d'informations sur le balisage, consultez :
+ [Balises dans Amazon SWF](swf-dev-adv-tags.md)
+ [Contrôle de l'accès à l'aide de balises IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html)

# Points de terminaison Amazon VPC pour Amazon SWF
<a name="swf-vpc-endpoints"></a>

**Note**  
AWS PrivateLink le support n'est actuellement disponible que dans les régions AWS Top AWS Secret - Est, Secret Region et Chine.

Si vous utilisez Amazon Virtual Private Cloud (Amazon VPC) pour héberger vos AWS ressources, vous pouvez établir une connexion entre vos flux de travail Amazon VPC et Amazon Simple Workflow Service. Vous pouvez utiliser cette connexion avec vos flux de travail Amazon SWF sans passer par l'Internet public. 

Amazon VPC vous permet de lancer AWS des ressources dans un réseau virtuel personnalisé. Vous pouvez utiliser un VPC pour contrôler vos paramètres réseau, tels que la plage d'adresses IP, les sous-réseaux, les tables de routage et les passerelles réseau. Pour plus d'informations VPCs, consultez le guide de l'[utilisateur Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/).

Pour connecter votre Amazon VPC à Amazon SWF, vous devez d'abord définir un point de terminaison *VPC d'interface, qui vous permet de connecter votre VPC* à un autre. Services AWS Le point de terminaison assure une connectivité évolutive et fiable, sans qu'une passerelle Internet, une instance NAT (Network Address Translation) ou une connexion VPN ne soit nécessaire. Pour de plus amples informations, consultez [Points de terminaison VPC (AWS PrivateLink) ](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html) dans le *Guide de l'utilisateur Amazon VPC*.

## Création du point de terminaison
<a name="swf-vpc-endpoint-create"></a>

Vous pouvez créer un point de terminaison Amazon SWF dans votre VPC à l'aide du AWS Management Console, the AWS Command Line Interface (AWS CLI), d'un AWS SDK, de l'API Amazon SWF ou. CloudFormation

Pour plus d'informations sur la création et la configuration d'un point de terminaison à l'aide de la console Amazon VPC ou de la AWS CLI, consultez la section [Création d'un point de terminaison d'interface](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint) dans le *Guide de l'utilisateur Amazon VPC*.

**Note**  
 Lorsque vous créez un point de terminaison, spécifiez Amazon SWF comme service auquel vous souhaitez que votre VPC se connecte. Dans la console Amazon VPC, les noms des services varient en fonction de la AWS région. **Par exemple, dans la région AWS Top Secret - Est, le nom du service pour Amazon SWF est com.amazonaws. us-iso-east**-1.swf.

Pour plus d'informations sur la création et la configuration d'un point de terminaison à l'aide CloudFormation de la VPCEndpoint ressource [AWS EC2 : : : :](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html) dans le *guide de CloudFormation l'utilisateur*.

## Politiques relatives aux terminaux Amazon VPC
<a name="swf-vpc-endpoint-policy"></a>

Pour contrôler l'accès à la connectivité à Amazon SWF, vous pouvez associer une politique de point de terminaison Gestion des identités et des accès AWS (IAM) lors de la création d'un point de terminaison Amazon VPC. Vous pouvez créer des règles IAM complexes en associant plusieurs politiques de point de terminaison. Pour plus d'informations, consultez :
+  [Politiques relatives aux terminaux Amazon Virtual Private Cloud pour Amazon SWF](swf-vpc-iam.md) 
+  [Contrôle de l'accès aux services avec les points de terminaison d'un VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html) 

# Politiques relatives aux terminaux Amazon Virtual Private Cloud pour Amazon SWF
<a name="swf-vpc-iam"></a>

Vous pouvez créer une politique de point de terminaison Amazon VPC pour Amazon SWF dans laquelle vous spécifiez les éléments suivants :
+ Le **principal** qui peut effectuer des actions.
+ Les actions qui peuvent être effectuées.
+ La ressource sur laquelle les actions peuvent être effectuées.

L'exemple suivant ajoute un rôle IAM spécifique à une politique :

```
"Principal": {
   "AWS": "arn:aws:iam::123456789012:role/MyRole"
}
```
+ Pour plus d'informations sur la création de politiques de point de terminaison, consultez la section [Contrôle de l'accès aux services avec des points de terminaison VPC.](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)
+ Pour plus d'informations sur la manière dont vous pouvez utiliser IAM pour contrôler l'accès à vos ressources AWS et à celles d'Amazon SWF, consultez. [Identity and Access Management dans Amazon Simple Workflow Service](swf-dev-iam.md)

# Résolution des problèmes d'identité et d'accès à Amazon Simple Workflow Service
<a name="security_iam_troubleshoot"></a>

Utilisez les informations suivantes pour vous aider à diagnostiquer et à résoudre les problèmes courants que vous pouvez rencontrer lorsque vous travaillez avec Amazon SWF et IAM.

**Topics**
+ [Je ne suis pas autorisé à effectuer une action dans Amazon SWF](#security_iam_troubleshoot-no-permissions)
+ [Je ne suis pas autorisé à effectuer iam : PassRole](#security_iam_troubleshoot-passrole)
+ [Je souhaite autoriser des personnes extérieures à moi Compte AWS à accéder à mes ressources Amazon SWF](#security_iam_troubleshoot-cross-account-access)

## Je ne suis pas autorisé à effectuer une action dans Amazon SWF
<a name="security_iam_troubleshoot-no-permissions"></a>

Si vous recevez une erreur selon laquelle vous n'êtes pas autorisé à effectuer une action, vos stratégies doivent être mises à jour afin de vous permettre d'effectuer l'action.

L'exemple d'erreur suivant se produit quand l'utilisateur `mateojackson` tente d'utiliser la console pour afficher des informations détaillées sur une ressource `my-example-widget` fictive, mais ne dispose pas des autorisations `swf:GetWidget` fictives.

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

Dans ce cas, la stratégie de Mateo doit être mise à jour pour l'autoriser à accéder à la ressource `my-example-widget` à l'aide de l'action `swf:GetWidget`.

Si vous avez besoin d'aide, contactez votre AWS administrateur. Votre administrateur vous a fourni vos informations d’identification de connexion.

## Je ne suis pas autorisé à effectuer iam : PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Si vous recevez un message d'erreur indiquant que vous n'êtes pas autorisé à effectuer l'`iam:PassRole`action, vos politiques doivent être mises à jour pour vous permettre de transmettre un rôle à Amazon SWF.

Certains vous Services AWS permettent de transmettre un rôle existant à ce service au lieu de créer un nouveau rôle de service ou un rôle lié à un service. Pour ce faire, vous devez disposer des autorisations nécessaires pour transmettre le rôle au service.

L'exemple d'erreur suivant se produit lorsqu'un utilisateur IAM nommé `marymajor` essaie d'utiliser la console pour effectuer une action dans Amazon SWF. Toutefois, l’action nécessite que le service ait des autorisations accordées par un rôle de service. Mary n'est pas autorisée à transmettre le rôle au service.

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

Dans ce cas, les politiques de Mary doivent être mises à jour pour lui permettre d’exécuter l’action `iam:PassRole`.

Si vous avez besoin d'aide, contactez votre AWS administrateur. Votre administrateur vous a fourni vos informations d’identification de connexion.

## Je souhaite autoriser des personnes extérieures à moi Compte AWS à accéder à mes ressources Amazon SWF
<a name="security_iam_troubleshoot-cross-account-access"></a>

Vous pouvez créer un rôle que les utilisateurs provenant d’autres comptes ou les personnes extérieures à votre organisation pourront utiliser pour accéder à vos ressources. Vous pouvez spécifier qui est autorisé à assumer le rôle. Pour les services qui prennent en charge les politiques basées sur les ressources ou les listes de contrôle d'accès (ACLs), vous pouvez utiliser ces politiques pour autoriser les utilisateurs à accéder à vos ressources.

Pour plus d’informations, consultez les éléments suivants :
+ Pour savoir si Amazon SWF prend en charge ces fonctionnalités, consultez. [Comment Amazon Simple Workflow Service fonctionne avec IAM](security_iam_service-with-iam.md)
+ Pour savoir comment fournir l'accès à vos ressources sur celles Comptes AWS que vous possédez, consultez la section [Fournir l'accès à un utilisateur IAM dans un autre utilisateur Compte AWS que vous possédez](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) dans le Guide de l'*utilisateur IAM*.
+ Pour savoir comment fournir l'accès à vos ressources à des tiers Comptes AWS, consultez la section [Fournir un accès à des ressources Comptes AWS détenues par des tiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) dans le *guide de l'utilisateur IAM*.
+ Pour savoir comment fournir un accès par le biais de la fédération d’identité, consultez [Fournir un accès à des utilisateurs authentifiés en externe (fédération d’identité)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) dans le *Guide de l’utilisateur IAM*.
+ Pour en savoir plus sur la différence entre l’utilisation des rôles et des politiques basées sur les ressources pour l’accès intercompte, consultez [Accès intercompte aux ressources dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dans le *Guide de l’utilisateur IAM*.