Comment fonctionne OpsWorks CM avec IAM - AWS OpsWorks

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.

Comment fonctionne OpsWorks CM avec IAM

Avant d'utiliser IAM pour gérer l'accès à OpsWorks CM, vous devez connaître les fonctionnalités IAM disponibles avec OpsWorks CM. Pour obtenir une vue d'ensemble de la manière dont OpsWorks CM et les autres AWS services fonctionnent avec IAM, consultez la section AWS Services compatibles avec IAM dans le Guide de l'utilisateur d'IAM.

OpsWorks Politiques basées sur l'identité CM

Avec les politiques basées sur l'identité IAM, vous pouvez spécifier les actions et les ressources autorisées ou refusées ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. OpsWorks CM prend en charge des actions, des ressources et des clés de condition spécifiques. Pour en savoir plus sur tous les éléments que vous utilisez dans une politique JSON, consultez Références des éléments de politique JSON IAM dans le Guide de l'utilisateur IAM.

Dans OpsWorks CM, vous pouvez associer une déclaration de politique personnalisée à un utilisateur, à un rôle ou à un groupe.

Actions

L'élément Action d'une stratégie basée sur une identité IAM décrit les actions spécifiques qui seront autorisées ou refusées par la stratégie. Les actions de stratégie portent généralement le même nom que l'opération AWS d'API associée. L'action est utilisée dans une politique pour permettre d'effectuer l'opération associée.

Les actions de politique dans OpsWorks CM utilisent le préfixe suivant avant l'action :opsworks-cm:. Par exemple, pour accorder à une personne l'autorisation de créer un serveur de gestion de configuration d' OpsWorks à l'aide d'une opération d'API, vous incluez l'action opsworks-cm:CreateServer dans sa stratégie. Les déclarations de politique doivent inclure un NotAction élément Action ou. OpsWorks CM définit son propre ensemble d'actions décrivant les tâches que vous pouvez effectuer avec ce service.

Pour spécifier plusieurs actions dans une seule déclaration, séparez-les par des virgules comme suit :

"Action": [ "opsworks-cm:action1", "opsworks-cm:action2"

Vous pouvez aussi spécifier plusieurs actions à l’aide de caractères génériques (*). Par exemple, pour spécifier toutes les actions qui commencent par le mot Describe, incluez l’action suivante :

"Action": "opsworks-cm:Describe*"

Lorsque vous utilisez des caractères génériques pour autoriser plusieurs actions dans une déclaration de stratégie, veillez à autoriser ces actions uniquement pour les services ou les utilisateurs autorisés.

Pour consulter la liste des actions OpsWorks CM, consultez la section Actions, ressources et clés de condition pour AWS OpsWorks dans le guide de l'utilisateur IAM.

Ressources

L'élément Resource précise les objets auxquels l'action s'applique. Les instructions doivent inclure un élément Resource ou NotResource. Vous spécifiez une ressource à l'aide d'un ARN ou du caractère générique (*) pour indiquer que l'instruction s'applique à toutes les ressources.

Vous pouvez obtenir le numéro de ressource Amazon (ARN) d'un serveur OpsWorks CM ou d'une sauvegarde en exécutant les opérations d'DescribeBackupsAPI DescribeServersou en basant les politiques au niveau des ressources sur ces ressources.

Une ressource de serveur OpsWorks CM possède un ARN au format suivant :

arn:aws:opsworks-cm:{Region}:${Account}:server/${ServerName}/${UniqueId}

Une ressource de sauvegarde OpsWorks CM possède un ARN au format suivant :

arn:aws:opsworks-cm:{Region}:${Account}:backup/${ServerName}-{Date-and-Time-Stamp-of-Backup}

Pour plus d'informations sur le format de ARNs, consultez Amazon Resource Names (ARNs) et AWS Service Namespaces.

Par exemple, pour spécifier le serveur Chef Automate test-chef-automate dans votre déclaration, utilisez l'ARN suivant :

"Resource": "arn:aws:opsworks-cm:us-west-2:123456789012:server/test-chef-automate/EXAMPLE-d1a2bEXAMPLE"

Pour spécifier tous les serveurs OpsWorks CM appartenant à un compte spécifique, utilisez le caractère générique (*) :

"Resource": "arn:aws:opsworks-cm:us-west-2:123456789012:server/*"

L'exemple suivant indique une sauvegarde du serveur OpsWorks CM en tant que ressource :

"Resource": "arn:aws:opsworks-cm:us-west-2:123456789012:backup/test-chef-automate-server-2018-05-20T19:06:12.399Z"

Certaines actions OpsWorks CM, telles que celles relatives à la création de ressources, ne peuvent pas être effectuées sur une ressource spécifique. Dans ces cas-là, vous devez utiliser le caractère générique (*).

"Resource": "*"

De nombreuses actions d'API nécessitent plusieurs ressources. Pour spécifier plusieurs ressources dans une seule instruction, séparez-les ARNs par des virgules.

"Resource": [ "resource1", "resource2"

Pour consulter la liste des types de ressources OpsWorks CM et leurs caractéristiques ARNs, consultez la section Actions, ressources et clés de condition pour AWS OpsWorks CM dans le guide de l'utilisateur IAM. Pour savoir avec quelles actions vous pouvez spécifier l'ARN de chaque ressource, consultez la section Actions, ressources et clés de condition pour AWS OpsWorks CM dans le guide de l'utilisateur IAM.

Clés de condition

OpsWorks CM ne dispose pas de clés contextuelles spécifiques au service pouvant être utilisées dans l'Conditionélément des déclarations de politique. Pour obtenir la liste des clés de contexte globales disponibles pour tous les services, consultez la section Clés de contexte de condition AWS globale dans le manuel de référence des politiques IAM. Pour voir toutes les clés de condition AWS globales, voir les clés de contexte de condition AWS globales dans le guide de l'utilisateur IAM.

L’élément Condition (ou le bloc Condition) vous permet de spécifier des conditions lorsqu’une instruction est appliquée. L’élément Condition est facultatif. Vous pouvez créer des expressions conditionnelles qui utilisent des opérateurs de condition, comme égal ou inférieur, pour faire correspondre la condition de la stratégie aux valeurs de la demande.

Si vous spécifiez plusieurs éléments Condition dans une instruction, ou plusieurs clés dans un seul élément Condition, AWS les évalue à l’aide d’une opération AND logique. Si vous spécifiez plusieurs valeurs pour une seule clé de condition, AWS évalue la condition à l'aide d'une OR opération logique. Toutes les conditions doivent être remplies avant que les autorisations associées à l’instruction ne soient accordées.

Vous pouvez aussi utiliser des variables d’espace réservé quand vous spécifiez des conditions. Par exemple, vous pouvez autoriser un utilisateur à accéder à une ressource uniquement si celle-ci porte le nom de l'utilisateur. Pour plus d’informations, consultez Éléments des politiques IAM : variables et balises dans le Guide de l’utilisateur IAM.

Exemples

Pour consulter des exemples de politiques basées sur l'identité OpsWorks CM, consultez. AWS OpsWorks Exemples de politiques basées sur l'identité CM

OpsWorks Politiques basées sur le CM et les ressources

OpsWorks CM ne prend pas en charge les politiques basées sur les ressources.

Les stratégies basées sur les ressources sont des documents de stratégie JSON qui spécifient les actions qu'un mandataire spécifié peut effectuer sur une ressource et dans quelles conditions.

Autorisation basée sur les balises OpsWorks CM

Vous pouvez associer des balises aux ressources OpsWorks CM ou transmettre des balises dans une demande adressée à OpsWorks CM. Pour contrôler l'accès basé sur des balises, vous devez fournir les informations des balises dans l'élément de condition d'une stratégie utilisant les clés de condition aws:RequestTag/key-name ou aws:TagKeys. Pour plus d'informations sur le balisage des ressources OpsWorks CM, consultez Utilisation des balises sur les AWS OpsWorks for Chef Automate ressources ou Utilisation des balises sur les AWS OpsWorks for Puppet Enterprise ressources consultez ce guide.

OpsWorks Rôles CM IAM

Un rôle IAM est une entité de votre AWS compte qui possède des autorisations spécifiques.

OpsWorks CM utilise deux rôles :

  • Rôle de service qui accorde au service OpsWorks CM les autorisations nécessaires pour travailler dans le AWS compte d'un utilisateur. Si vous utilisez le rôle de service par défaut fourni par OpsWorks CM, le nom de ce rôle estaws-opsworks-cm-service-role.

  • Rôle de profil d'instance qui permet au service OpsWorks CM d'appeler l'API OpsWorks CM. Ce rôle donne accès à Amazon S3 et permet AWS CloudFormation de créer le serveur et le compartiment S3 pour les sauvegardes. Si vous utilisez le profil d'instance par défaut fourni par OpsWorks CM, le nom de ce rôle de profil d'instance estaws-opsworks-cm-ec2-role.

OpsWorks CM n'utilise pas de rôles liés à un service.

Utilisation d'informations d'identification temporaires avec la gestion de configuration d' OpsWorks

OpsWorks CM prend en charge l'utilisation d'informations d'identification temporaires et hérite de cette fonctionnalité de AWS Security Token Service.

Vous pouvez utiliser des informations d’identification temporaires pour vous connecter à l’aide de la fédération, endosser un rôle IAM ou encore pour endosser un rôle intercompte. Vous obtenez des informations d'identification de sécurité temporaires en appelant des opérations d' AWS STS API telles que AssumeRoleou GetFederationToken.

Rôles liés à un service

OpsWorks CM n'utilise pas de rôles liés à un service.

Les rôles liés aux AWS services permettent aux services d'accéder aux ressources d'autres services pour effectuer une action en votre nom. Les rôles liés à un service s’affichent dans votre compte IAM et sont la propriété du service. Un administrateur IAM peut consulter, mais ne peut pas modifier, les autorisations concernant les rôles liés à un service.

Rôles de service

Cette fonction permet à un service d’endosser une fonction du service en votre nom. Ce rôle autorise le service à accéder à des ressources d’autres services pour effectuer une action en votre nom. Les rôles de service s’affichent dans votre compte IAM et sont la propriété du compte. Cela signifie qu’un administrateur IAM peut modifier les autorisations associées à ce rôle. Toutefois, une telle action peut perturber le bon fonctionnement du service.

OpsWorks CM utilise deux rôles :

  • Rôle de service qui accorde au service OpsWorks CM les autorisations nécessaires pour travailler dans le AWS compte d'un utilisateur. Si vous utilisez le rôle de service par défaut fourni par OpsWorks CM, le nom de ce rôle estaws-opsworks-cm-service-role.

  • Rôle de profil d'instance qui permet au service OpsWorks CM d'appeler l'API OpsWorks CM. Ce rôle donne accès à Amazon S3 et permet AWS CloudFormation de créer le serveur et le compartiment S3 pour les sauvegardes. Si vous utilisez le profil d'instance par défaut fourni par OpsWorks CM, le nom de ce rôle de profil d'instance estaws-opsworks-cm-ec2-role.

Choisir un rôle IAM dans CM OpsWorks

Lorsque vous créez un serveur dans OpsWorks CM, vous devez choisir un rôle pour permettre à OpsWorks CM d'accéder à Amazon EC2 en votre nom. Si vous avez déjà créé un rôle de service, OpsWorks CM vous propose une liste de rôles parmi lesquels choisir. OpsWorks CM peut créer le rôle pour vous, si vous ne le spécifiez pas. Il est important de choisir un rôle qui autorise l'accès au démarrage et à l'arrêt EC2 des instances Amazon. Pour plus d’informations, consultez Création d'un serveur Chef Automate ou Créer un serveur maître Puppet Enterprise.