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.
Gestion des rôles de service Elastic Beanstalk
Pour gérer et surveiller votre environnement, AWS Elastic Beanstalk exécute des actions sur les ressources de l'environnement en votre nom. Elastic Beanstalk a besoin de certaines autorisations pour effectuer ces actions, et AWS Identity and Access Management elle assume des rôles de service (IAM) pour obtenir ces autorisations.
Elastic Beanstalk a besoin d'utiliser des informations d'identification de sécurité temporaires chaque fois qu'il assume un rôle de service. Pour obtenir ces informations d'identification, Elastic Beanstalk envoie une requête à AWS Security Token Service (AWS STS) sur un point de terminaison spécifique à une région. Pour plus d'informations, consultez Informations d'identification de sécurité temporaires dans le Guide de l'utilisateur IAM.
Note
Si le AWS STS point de terminaison de la région où se trouve votre environnement est désactivé, Elastic Beanstalk envoie la demande sur un autre point de terminaison qui ne peut pas être désactivé. Ce point de terminaison est associé à une région différente. Il s'agit par conséquent d'une demande inter-région. Pour plus d'informations, consultez la section Activation et désactivation AWS STS dans une AWS région dans le guide de l'utilisateur IAM.
Gestion des rôles de service à l'aide de la console Elastic Beanstalk et de l'interface de ligne de commande (CLI) EB
Vous pouvez utiliser la console Elastic Beanstalk et l'interface de ligne de commande (CLI) EB pour définir des rôles de service pour votre environnement avec un ensemble suffisant d'autorisations. Ils créent une fonction du service par défaut et utilisent des politiques gérées.
Politiques gérées des fonctions du service
Elastic Beanstalk fournit une politique gérée pour la surveillance améliorée de l'état, et une autre qui comporte les autorisations supplémentaires requises pour les mises à jour gérées de la plateforme. La console et l'interface de ligne de commande (CLI) EB attribuent ces deux politiques à la fonction du service par défaut qu'elles créent pour vous. Ces politiques doivent être utilisées uniquement pour cette fonction du service par défaut. Elles ne doivent pas être utilisées avec d'autres utilisateurs ou rôles dans vos comptes.
Cette politique accorde des autorisations pour qu'Elastic Beanstalk surveille l'état de l'instance et de l'environnement.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"elasticloadbalancing:DescribeInstanceHealth",
"elasticloadbalancing:DescribeLoadBalancers",
"elasticloadbalancing:DescribeTargetHealth",
"ec2:DescribeInstances",
"ec2:DescribeInstanceStatus",
"ec2:GetConsoleOutput",
"ec2:AssociateAddress",
"ec2:DescribeAddresses",
"ec2:DescribeSecurityGroups",
"sqs:GetQueueAttributes",
"sqs:GetQueueUrl",
"autoscaling:DescribeAutoScalingGroups",
"autoscaling:DescribeAutoScalingInstances",
"autoscaling:DescribeScalingActivities",
"autoscaling:DescribeNotificationConfigurations",
"sns:Publish"
],
"Resource": [
"*"
]
}
]
}
Cette politique octroie des autorisations à Elastic Beanstalk pour mettre à jour les environnements en votre nom afin d'effectuer des mises à jour de plateforme gérées.
Groupements d'autorisations de niveau service
Cette politique est groupée en instructions basées sur le jeu d'autorisations fourni.
-
ElasticBeanstalkPermissions
— Ce groupe d'autorisations sert à appeler les actions de service Elastic Beanstalk (API Elastic Beanstalk). -
AllowPassRoleToElasticBeanstalkAndDownstreamServices
– Ce groupe d'autorisations permet de transmettre n'importe quel rôle à Elastic Beanstalk et à d'autres services aval comme AWS CloudFormation. -
ReadOnlyPermissions
— Ce groupe d'autorisations sert à collecter des informations sur l'environnement en cours d'exécution. -
*OperationPermissions
— Les groupes avec ce schéma de nommage servent à appeler les opérations nécessaires pour effectuer les mises à jour de la plateforme. -
*BroadOperationPermissions
— Les groupes avec ce schéma de nommage servent à appeler les opérations nécessaires pour effectuer les mises à jour de la plateforme. Ils incluent également des autorisations étendues pour la prise en charge d'environnements hérités. -
*TagResource
— Les groupes dotés de ce modèle de dénomination sont destinés aux appels qui utilisent les tag-on-create API pour attacher des balises aux ressources créées dans un environnement Elastic Beanstalk.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ElasticBeanstalkPermissions",
"Effect": "Allow",
"Action": [
"elasticbeanstalk:*"
],
"Resource": "*"
},
{
"Sid": "AllowPassRoleToElasticBeanstalkAndDownstreamServices",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/*",
"Condition": {
"StringEquals": {
"iam:PassedToService": [
"elasticbeanstalk.amazonaws.com",
"ec2.amazonaws.com",
"ec2.amazonaws.com.rproxy.goskope.com.cn",
"autoscaling.amazonaws.com",
"elasticloadbalancing.amazonaws.com",
"ecs.amazonaws.com",
"cloudformation.amazonaws.com"
]
}
}
},
{
"Sid": "ReadOnlyPermissions",
"Effect": "Allow",
"Action": [
"autoscaling:DescribeAccountLimits",
"autoscaling:DescribeAutoScalingGroups",
"autoscaling:DescribeAutoScalingInstances",
"autoscaling:DescribeLaunchConfigurations",
"autoscaling:DescribeLoadBalancers",
"autoscaling:DescribeNotificationConfigurations",
"autoscaling:DescribeScalingActivities",
"autoscaling:DescribeScheduledActions",
"ec2:DescribeAccountAttributes",
"ec2:DescribeAddresses",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeImages",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstances",
"ec2:DescribeKeyPairs",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSnapshots",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSubnets",
"ec2:DescribeVpcClassicLink",
"ec2:DescribeVpcs",
"elasticloadbalancing:DescribeInstanceHealth",
"elasticloadbalancing:DescribeLoadBalancers",
"elasticloadbalancing:DescribeTargetGroups",
"elasticloadbalancing:DescribeTargetHealth",
"logs:DescribeLogGroups",
"rds:DescribeDBEngineVersions",
"rds:DescribeDBInstances",
"rds:DescribeOrderableDBInstanceOptions",
"sns:ListSubscriptionsByTopic"
],
"Resource": [
"*"
]
},
{
"Sid": "EC2BroadOperationPermissions",
"Effect": "Allow",
"Action": [
"ec2:AllocateAddress",
"ec2:AssociateAddress",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateLaunchTemplate",
"ec2:CreateLaunchTemplateVersion",
"ec2:CreateSecurityGroup",
"ec2:DeleteLaunchTemplate",
"ec2:DeleteLaunchTemplateVersions",
"ec2:DeleteSecurityGroup",
"ec2:DisassociateAddress",
"ec2:ReleaseAddress",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": "*"
},
{
"Sid": "EC2RunInstancesOperationPermissions",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": "*",
"Condition": {
"ArnLike": {
"ec2:LaunchTemplate": "arn:aws:ec2:*:*:launch-template/*"
}
}
},
{
"Sid": "EC2TerminateInstancesOperationPermissions",
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances"
],
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-id": [
"arn:aws:cloudformation:*:*:stack/awseb-e-*",
"arn:aws:cloudformation:*:*:stack/eb-*"
]
}
}
},
{
"Sid": "ECSBroadOperationPermissions",
"Effect": "Allow",
"Action": [
"ecs:CreateCluster",
"ecs:DescribeClusters",
"ecs:RegisterTaskDefinition"
],
"Resource": "*"
},
{
"Sid": "ECSDeleteClusterOperationPermissions",
"Effect": "Allow",
"Action": "ecs:DeleteCluster",
"Resource": "arn:aws:ecs:*:*:cluster/awseb-*"
},
{
"Sid": "ASGOperationPermissions",
"Effect": "Allow",
"Action": [
"autoscaling:AttachInstances",
"autoscaling:CreateAutoScalingGroup",
"autoscaling:CreateLaunchConfiguration",
"autoscaling:CreateOrUpdateTags",
"autoscaling:DeleteLaunchConfiguration",
"autoscaling:DeleteAutoScalingGroup",
"autoscaling:DeleteScheduledAction",
"autoscaling:DetachInstances",
"autoscaling:DeletePolicy",
"autoscaling:PutScalingPolicy",
"autoscaling:PutScheduledUpdateGroupAction",
"autoscaling:PutNotificationConfiguration",
"autoscaling:ResumeProcesses",
"autoscaling:SetDesiredCapacity",
"autoscaling:SuspendProcesses",
"autoscaling:TerminateInstanceInAutoScalingGroup",
"autoscaling:UpdateAutoScalingGroup"
],
"Resource": [
"arn:aws:autoscaling:*:*:launchConfiguration:*:launchConfigurationName/awseb-e-*",
"arn:aws:autoscaling:*:*:launchConfiguration:*:launchConfigurationName/eb-*",
"arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/awseb-e-*",
"arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/eb-*"
]
},
{
"Sid": "CFNOperationPermissions",
"Effect": "Allow",
"Action": [
"cloudformation:*"
],
"Resource": [
"arn:aws:cloudformation:*:*:stack/awseb-*",
"arn:aws:cloudformation:*:*:stack/eb-*"
]
},
{
"Sid": "ELBOperationPermissions",
"Effect": "Allow",
"Action": [
"elasticloadbalancing:AddTags",
"elasticloadbalancing:ApplySecurityGroupsToLoadBalancer",
"elasticloadbalancing:ConfigureHealthCheck",
"elasticloadbalancing:CreateLoadBalancer",
"elasticloadbalancing:DeleteLoadBalancer",
"elasticloadbalancing:DeregisterInstancesFromLoadBalancer",
"elasticloadbalancing:DeregisterTargets",
"elasticloadbalancing:RegisterInstancesWithLoadBalancer",
"elasticloadbalancing:RegisterTargets"
],
"Resource": [
"arn:aws:elasticloadbalancing:*:*:targetgroup/awseb-*",
"arn:aws:elasticloadbalancing:*:*:targetgroup/eb-*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/awseb-*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/eb-*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/*/awseb-*/*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/*/eb-*/*"
]
},
{
"Sid": "CWLogsOperationPermissions",
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:DeleteLogGroup",
"logs:PutRetentionPolicy"
],
"Resource": "arn:aws:logs:*:*:log-group:/aws/elasticbeanstalk/*"
},
{
"Sid": "S3ObjectOperationPermissions",
"Effect": "Allow",
"Action": [
"s3:DeleteObject",
"s3:GetObject",
"s3:GetObjectAcl",
"s3:GetObjectVersion",
"s3:GetObjectVersionAcl",
"s3:PutObject",
"s3:PutObjectAcl",
"s3:PutObjectVersionAcl"
],
"Resource": "arn:aws:s3:::elasticbeanstalk-*/*"
},
{
"Sid": "S3BucketOperationPermissions",
"Effect": "Allow",
"Action": [
"s3:GetBucketLocation",
"s3:GetBucketPolicy",
"s3:ListBucket",
"s3:PutBucketPolicy"
],
"Resource": "arn:aws:s3:::elasticbeanstalk-*"
},
{
"Sid": "SNSOperationPermissions",
"Effect": "Allow",
"Action": [
"sns:CreateTopic",
"sns:GetTopicAttributes",
"sns:SetTopicAttributes",
"sns:Subscribe"
],
"Resource": "arn:aws:sns:*:*:ElasticBeanstalkNotifications-*"
},
{
"Sid": "SQSOperationPermissions",
"Effect": "Allow",
"Action": [
"sqs:GetQueueAttributes",
"sqs:GetQueueUrl"
],
"Resource": [
"arn:aws:sqs:*:*:awseb-e-*",
"arn:aws:sqs:*:*:eb-*"
]
},
{
"Sid": "CWPutMetricAlarmOperationPermissions",
"Effect": "Allow",
"Action": [
"cloudwatch:PutMetricAlarm"
],
"Resource": [
"arn:aws:cloudwatch:*:*:alarm:awseb-*",
"arn:aws:cloudwatch:*:*:alarm:eb-*"
]
},
{
"Sid": "AllowECSTagResource",
"Effect": "Allow",
"Action": [
"ecs:TagResource"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"ecs:CreateAction": [
"CreateCluster",
"RegisterTaskDefinition"
]
}
}
}
]
}
Pour afficher le contenu d'une politique gérée, vous pouvez aussi utiliser la page Policies (Politiques)
Important
Les stratégies gérées par Elastic Beanstalk ne fournissent pas d'autorisations granulaires : elles accordent toutes les autorisations potentiellement nécessaires à l'utilisation des applications Elastic Beanstalk. Dans certains cas, vous souhaiterez peut-être restreindre davantage les autorisations de nos politiques gérées. Pour un exemple d'un cas d'utilisation, voirEmpêcher l'accès aux compartiments Amazon S3 entre environnements.
Nos stratégies gérées ne couvrent pas non plus les autorisations relatives aux ressources personnalisées que vous pourriez ajouter à votre solution et qui ne sont pas gérées par Elastic Beanstalk. Pour implémenter des autorisations plus granulaires, des autorisations minimales requises ou des autorisations de ressources personnalisées, utilisez des stratégies personnalisées.
Politiques gérées par obsolètes
Dans le passé, Elastic Beanstalk AWSElasticBeanstalkServicesoutenait la politique relative aux rôles de service géré. Cette politique a été remplacée par AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy. Vous pouvez toujours voir et utiliser la politique précédente dans la console IAM.
Pour consulter le contenu des politiques gérées, reportez-vous AWSElasticBeanstalkServiceau Guide de référence des politiques AWS gérées.
Toutefois, nous vous recommandons de passer à l'utilisation de la nouvelle politique gérée (AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy). Ajoutez des politiques personnalisées pour accorder des autorisations aux ressources personnalisées, le cas échéant.
Utilisation de la console Elastic Beanstalk
Lorsque vous lancez un environnement dans la console Elastic Beanstalk, la console crée une fonction du service par défaut, appelé aws-elasticbeanstalk-service-role
, auquel elle associe des politiques gérées comportant des autorisations par défaut.
Pour autoriser Elastic Beanstalk à assumer le rôle aws-elasticbeanstalk-service-role
, la fonction du service spécifie Elastic Beanstalk comme entité de confiance dans la politique de relation d'approbation.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "elasticbeanstalk.amazonaws.com"
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "elasticbeanstalk"
}
}
}
]
}
Lorsque vous activez les mises à jour de plateforme gérée pour votre environnement, Elastic Beanstalk assume un rôle de service de mises à jour gérées distinct pour effectuer les mises à jour gérées. Par défaut, la console Elastic Beanstalk utilise le même rôle de service généré, aws-elasticbeanstalk-service-role
, pour le rôle de service de mises à jour gérées. Si vous modifiez votre rôle de service par défaut, la console définit le rôle de service de mises à jour gérées pour qu'il utilise le rôle lié au service de mises à jour gérées, AWSServiceRoleForElasticBeanstalkManagedUpdates
. Pour plus d’informations sur les rôles liés à un service, consultez Utilisation des rôles liés à un service.
Note
En raison de problèmes d'autorisation, le service Elastic Beanstalk ne réussit pas toujours à créer ce rôle lié au service pour vous. Par conséquent, la console tente de le créer explicitement. Pour vous assurer que votre compte dispose de ce rôle lié au service, créez un environnement au moins une fois à l'aide de la console et configurez les mises à jour gérées pour qu'elles soient activées avant de créer l'environnement.
Utilisation de l'interface de ligne de commande (CLI) EB
Si vous lancez un environnement à l'aide de la commande eb create de l'interface de ligne de commande Elastic Beanstalk (EB CLI) et que vous ne spécifiez pas de rôle de service au moyen de l'option --service-role
, Elastic Beanstalk crée le rôle de service par défaut aws-elasticbeanstalk-service-role
. Si le rôle de service par défaut existe déjà, Elastic Beanstalk l'utilise pour le nouvel environnement. La console Elastic Beanstalk effectue également des actions similaires dans ces circonstances.
À la différence de la console, vous ne pouvez pas spécifier de rôle de service de mises à jour gérées lorsque vous utilisez une option de commande EB CLI. Si vous activez les mises à jour gérées pour votre environnement, vous devez définir le rôle de service de mises à jour gérées au moyen des options de configuration. L'exemple suivant active les mises à jour gérées et utilise le rôle de service par défaut en tant que rôle de service de mises à jour gérées.
Exemple extensions .eb/ .config managed-platform-update
option_settings:
aws:elasticbeanstalk:managedactions:
ManagedActionsEnabled: true
PreferredStartTime: "Tue:09:00"
ServiceRoleForManagedUpdates: "aws-elasticbeanstalk-service-role"
aws:elasticbeanstalk:managedactions:platformupdate:
UpdateLevel: patch
InstanceRefreshEnabled: true
Gestion des rôles de service à l'aide de l'API Elastic Beanstalk
Lorsque vous utilisez l'action CreateEnvironment
de l'API Elastic Beanstalk pour créer un environnement, spécifiez un rôle de service avec l'option de configuration ServiceRole
dans l'espace de noms aws:elasticbeanstalk:environment
. Pour plus d'informations sur l'utilisation de la surveillance améliorée de l'état avec l'API Elastic Beanstalk, consultez Utilisation des rapports améliorés sur l'état à l'aide de l'API Elastic Beanstalk.
En outre, si vous activez les mises à jour de plateforme gérée pour votre environnement, vous pouvez spécifier un rôle de service de mises à jour gérées à l'aide de l'option ServiceRoleForManagedUpdates
de l'espace de noms aws:elasticbeanstalk:managedactions
.
Utilisation des rôles liés à un service
Un rôle lié à un service est un type unique de rôle de service prédéfini par Elastic Beanstalk pour inclure toutes les autorisations dont le service a besoin pour appeler d'autres services en votre nom. AWS Le rôle lié à un service est associé à votre compte. Elastic Beanstalk le crée une fois, puis le réutilise lors de la création d'environnements supplémentaires. Pour plus d'informations sur l'utilisation des rôles liés à un service avec les environnements Elastic Beanstalk, consultez Utilisation des rôles liés à un service pour Elastic Beanstalk.
Si vous créez un environnement à l'aide de l'API Elastic Beanstalk et que vous ne spécifiez pas de rôle de service, Elastic Beanstalk crée un rôle lié au service de surveillance pour votre compte, s'il n'en existe pas déjà un. Elastic Beanstalk utilise ce rôle pour le nouvel environnement. Vous pouvez également utiliser IAM pour créer à l'avance le rôle lié au service de surveillance de votre compte. Une fois que votre compte dispose de ce rôle, vous pouvez l'utiliser pour créer un environnement à l'aide de l'API Elastic Beanstalk, de la console Elastic Beanstalk ou de l'interface de ligne de commande (CLI) EB.
Si vous activez les mises à jour de plateforme gérées pour l'environnement et que vous spécifiez AWSServiceRoleForElasticBeanstalkManagedUpdates
comme valeur pour l'option ServiceRoleForManagedUpdates
de l'espace de noms aws:elasticbeanstalk:managedactions
, Elastic Beanstalk crée un rôle lié au service des mises à jour gérées pour votre compte, s'il n'en n'existe pas déjà un. Elastic Beanstalk utilise le rôle pour effectuer des mises à jour gérées pour le nouvel environnement.
Note
Quand Elastic Beanstalk tente de créer les rôles de surveillance et de mises à jour gérées liées au service pour votre compte lorsque vous créez un environnement, vous devez disposer de l'autorisation iam:CreateServiceLinkedRole
. Si vous ne disposez pas de cette autorisation, la création de l'environnement échoue et un message expliquant le problème s'affiche.
En lieu et place, un autre utilisateur ayant l'autorisation de créer des rôles liés à un service peut utiliser IAM pour créer le rôle de service lié à l'avance. En employant cette méthode, vous n'avez pas besoin de l'autorisation iam:CreateServiceLinkedRole
pour créer votre environnement.
Vérification des autorisations de rôle de service par défaut
Les autorisations accordées par votre rôle de service par défaut peuvent varier selon la date à laquelle il a été créé, la date du dernier lancement d'un environnement et le client que vous avez utilisé. Dans la console IAM, vous pouvez vérifier les autorisations accordées par le rôle de service par défaut.
Pour vérifier les autorisations du rôle de service par défaut
-
Dans la console IAM, ouvrez la page Roles (Rôles)
. -
Choisissez aws-elasticbeanstalk-service-role.
-
Sur l'onglet Autorisations, vérifiez la liste de politiques attachée au rôle.
-
Pour afficher les autorisations octroyées à une politique, choisissez la politique.
Mettre à jour un rôle de service out-of-date par défaut
Si le rôle de service par défaut ne dispose pas des autorisations requises, vous pouvez le mettre à jour en créant un environnement dans la console de gestion d'environnement Elastic Beanstalk.
En variante, vous pouvez ajouter manuellement les politiques gérées à la fonction du service par défaut.
Pour ajouter des politiques gérées à la fonction du service par défaut
-
Dans la console IAM, ouvrez la page Roles (Rôles)
. -
Choisissez aws-elasticbeanstalk-service-role.
-
Sous l'onglet Permissions (Autorisations), choisissez Attach policies (Attacher des politiques).
-
Saisissez
AWSElasticBeanstalk
pour filtrer les politiques. -
Sélectionnez les politiques suivantes, puis choisissez Attacher une politique :
-
AWSElasticBeanstalkEnhancedHealth
-
AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy
-
Ajout d'autorisations au rôle de service par défaut
Si votre application inclut des fichiers de configuration qui font référence à AWS des ressources pour lesquelles les autorisations ne sont pas incluses dans le rôle de service par défaut, Elastic Beanstalk peut avoir besoin d'autorisations supplémentaires. Ces autorisations supplémentaires sont nécessaires pour résoudre ces références lorsque le service traite les fichiers de configuration lors d'une mise à jour gérée. S'il manque des autorisations, la mise à jour échoue et Elastic Beanstalk renvoie un message indiquant les autorisations dont il a besoin. Suivez ces étapes pour ajouter des autorisations pour les services supplémentaires au rôle de service par défaut dans la console IAM.
Pour ajouter des politiques supplémentaires à la fonction du service par défaut
-
Dans la console IAM, ouvrez la page Roles (Rôles)
. -
Choisissez aws-elasticbeanstalk-service-role.
-
Sous l'onglet Permissions (Autorisations), choisissez Attach policies (Attacher des politiques).
-
Sélectionnez la politique gérée relative aux services supplémentaires utilisés par votre application. Par exemple,
AmazonAPIGatewayAdministrator
ouAmazonElasticFileSystemFullAccess
. -
Choisissez Attach policy (Attacher une politique).
Création d'un rôle de service
Si vous ne pouvez pas utiliser le rôle de service par défaut, créez un rôle de service.
Pour créer un rôle de service
-
Dans la console IAM, ouvrez la page Roles (Rôles)
. -
Sélectionnez Créer un rôle.
-
Sous AWS service (Service AWS ), choisissez AWS Elastic Beanstalk, puis sélectionnez votre cas d'utilisation.
-
Sélectionnez Next: Permissions (Étape suivante : autorisations).
-
Associez les politiques gérées
AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy
etAWSElasticBeanstalkEnhancedHealth
et toutes les politiques supplémentaires fournissant les autorisations dont votre application a besoin. -
Choisissez Suivant : Balises.
-
(Facultatif) Ajoutez des balises au rôle.
-
Choisissez Suivant : vérification.
-
Entrez un nom pour le rôle.
-
Sélectionnez Créer un rôle.
Appliquez votre rôle de service personnalisé lorsque vous créez un environnement à l'aide de l'assistant de création d'environnement ou de l'option --service-role
de la commande eb create
.