AWS politiche gestite (predefinite) per CodeDeploy - AWS CodeDeploy

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS politiche gestite (predefinite) per CodeDeploy

AWS affronta molti casi d'uso comuni fornendo IAM politiche autonome create e amministrate da AWS. Queste politiche AWS gestite concedono le autorizzazioni per i casi d'uso comuni in modo da evitare di dover verificare quali autorizzazioni sono necessarie. Per ulteriori informazioni, consulta le politiche AWS gestite nella Guida per l'IAMutente.

Elenco delle politiche AWS gestite per CodeDeploy

Le seguenti politiche AWS gestite, che puoi allegare agli utenti del tuo account, sono specifiche per CodeDeploy:

  • AWSCodeDeployFullAccess: concede accesso completo a CodeDeploy.

    Nota

    AWSCodeDeployFullAccessnon fornisce autorizzazioni per le operazioni in altri servizi necessari per distribuire le tue applicazioni, come Amazon EC2 e Amazon S3, solo per operazioni specifiche di. CodeDeploy

  • AWSCodeDeployDeployerAccess: concede l'autorizzazione a registrare e distribuire le revisioni.

     

  • AWSCodeDeployReadOnlyAccess: concede accesso in sola lettura a CodeDeploy.

     

  • AWSCodeDeployRole: Consente di: CodeDeploy

    • leggi i tag sulle tue istanze o identifica le tue istanze Amazon tramite i EC2 nomi dei gruppi Amazon Auto EC2 Scaling

    • leggi, crea, aggiorna ed elimina i gruppi di Amazon EC2 Auto Scaling, gli hook del ciclo di vita, le politiche di scalabilità e le funzionalità di warm pool di Amazon Auto Scaling

    • pubblicare informazioni su SNS argomenti di Amazon

    • recuperare informazioni sugli allarmi Amazon CloudWatch

    • leggi e aggiorna le risorse nel servizio Elastic Load Balancing

    La policy contiene il codice seguente:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "autoscaling:CompleteLifecycleAction", "autoscaling:DeleteLifecycleHook", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeLifecycleHooks", "autoscaling:PutLifecycleHook", "autoscaling:RecordLifecycleActionHeartbeat", "autoscaling:CreateAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:UpdateAutoScalingGroup", "autoscaling:EnableMetricsCollection", "autoscaling:DescribePolicies", "autoscaling:DescribeScheduledActions", "autoscaling:DescribeNotificationConfigurations", "autoscaling:SuspendProcesses", "autoscaling:ResumeProcesses", "autoscaling:AttachLoadBalancers", "autoscaling:AttachLoadBalancerTargetGroups", "autoscaling:PutScalingPolicy", "autoscaling:PutScheduledUpdateGroupAction", "autoscaling:PutNotificationConfiguration", "autoscaling:DescribeScalingActivities", "autoscaling:DeleteAutoScalingGroup", "autoscaling:PutWarmPool", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:TerminateInstances", "tag:GetResources", "sns:Publish", "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeLoadBalancerAttributes", "elasticloadbalancing:DescribeInstanceHealth", "elasticloadbalancing:RegisterInstancesWithLoadBalancer", "elasticloadbalancing:DeregisterInstancesFromLoadBalancer", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeTargetGroupAttributes", "elasticloadbalancing:DescribeTargetHealth", "elasticloadbalancing:RegisterTargets", "elasticloadbalancing:DeregisterTargets" ], "Resource": "*" } ] }

     

  • AWSCodeDeployRoleForLambda: concede CodeDeploy l'autorizzazione all'accesso AWS Lambda e a qualsiasi altra risorsa richiesta per una distribuzione.

     

  • AWSCodeDeployRoleForECS: concede CodeDeploy l'autorizzazione ad accedere ad Amazon ECS e a qualsiasi altra risorsa richiesta per una distribuzione.

     

  • AWSCodeDeployRoleForECSLimited: concede l' CodeDeployautorizzazione ad accedere ad Amazon ECS e a qualsiasi altra risorsa richiesta per una distribuzione con le seguenti eccezioni:

    • Nella hooks sezione del AppSpec file, è CodeDeployHook_ possibile utilizzare solo le funzioni Lambda con nomi che iniziano con. Per ulteriori informazioni, consulta AppSpec sezione 'hook' per una distribuzione Amazon ECS.

    • L'accesso al bucket S3 è limitato ai bucket S3 con un tag di registrazione, UseWithCodeDeploy, che ha un valore di true. Per ulteriori informazioni, consulta la sezione Etichettatura degli oggetti.

  • AmazonEC2RoleforAWSCodeDeployLimited: concede CodeDeploy l'autorizzazione per ottenere ed elencare oggetti in un bucket CodeDeploy Amazon S3. La policy contiene il seguente codice:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:ListBucket" ], "Resource": "arn:aws:s3:::*/CodeDeploy/*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": "*", "Condition": { "StringEquals": { "s3:ExistingObjectTag/UseWithCodeDeploy": "true" } } } ] }

Le autorizzazioni per alcuni aspetti del processo di distribuzione sono concesse ad altri due tipi di ruolo che agiscono per conto di CodeDeploy:

  • Un profilo di IAM istanza è un IAM ruolo che attribuisci alle tue EC2 istanze Amazon. Questo profilo include le autorizzazioni necessarie per accedere ai bucket GitHub o ai repository Amazon S3 in cui sono archiviate le applicazioni. Per ulteriori informazioni, consulta Fase 4: crea un profilo di IAM istanza per le tue EC2 istanze Amazon.

  • Un ruolo di servizio è un IAM ruolo che concede le autorizzazioni a un AWS servizio in modo che possa accedere alle risorse. AWS Le politiche associate al ruolo di servizio determinano a quali AWS risorse il servizio può accedere e le azioni che può eseguire con tali risorse. Infatti CodeDeploy, un ruolo di servizio viene utilizzato per quanto segue:

    • Per leggere i tag applicati alle istanze o i nomi dei gruppi Amazon EC2 Auto Scaling associati alle istanze. Ciò consente di CodeDeploy identificare le istanze in cui può distribuire applicazioni.

    • Per eseguire operazioni su istanze, gruppi Amazon EC2 Auto Scaling e sistemi di bilanciamento del carico Elastic Load Balancing.

    • Pubblicare informazioni su SNS argomenti di Amazon in modo che le notifiche possano essere inviate quando si verificano determinati eventi di distribuzione o istanza.

    • Per recuperare informazioni sugli CloudWatch allarmi per configurare il monitoraggio degli allarmi per le distribuzioni.

    Per ulteriori informazioni, consulta Fase 2: Creare un ruolo di servizio per CodeDeploy.

Puoi anche creare IAM politiche personalizzate per concedere autorizzazioni per azioni e risorse. CodeDeploy Queste politiche personalizzate vengono associate ai IAM ruoli e quindi si assegnano i ruoli a utenti o gruppi che richiedono le autorizzazioni.

CodeDeploy politiche e notifiche gestite

CodeDeploy supporta le notifiche, che possono notificare agli utenti modifiche importanti alle implementazioni. Le politiche gestite CodeDeploy includono dichiarazioni politiche per la funzionalità di notifica. Per ulteriori informazioni, vedere Cosa sono le notifiche?.

Autorizzazioni correlate alle notifiche nelle policy gestite di accesso completo

Le policy gestite AWSCodeDeployFullAccess includono le seguenti dichiarazioni per consentire l'accesso completo alle notifiche. Gli utenti a cui viene applicata questa politica gestita possono anche creare e gestire SNS argomenti Amazon per le notifiche, iscrivere e annullare l'iscrizione degli utenti agli argomenti, elencare gli argomenti da scegliere come obiettivi per le regole di notifica ed elencare AWS Chatbot i client configurati per Slack.

{ "Sid": "CodeStarNotificationsReadWriteAccess", "Effect": "Allow", "Action": [ "codestar-notifications:CreateNotificationRule", "codestar-notifications:DescribeNotificationRule", "codestar-notifications:UpdateNotificationRule", "codestar-notifications:DeleteNotificationRule", "codestar-notifications:Subscribe", "codestar-notifications:Unsubscribe" ], "Resource": "*", "Condition" : { "StringLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codedeploy:*"} } }, { "Sid": "CodeStarNotificationsListAccess", "Effect": "Allow", "Action": [ "codestar-notifications:ListNotificationRules", "codestar-notifications:ListTargets", "codestar-notifications:ListTagsforResource", "codestar-notifications:ListEventTypes" ], "Resource": "*" }, { "Sid": "CodeStarNotificationsSNSTopicCreateAccess", "Effect": "Allow", "Action": [ "sns:CreateTopic", "sns:SetTopicAttributes" ], "Resource": "arn:aws:sns:*:*:codestar-notifications*" }, { "Sid": "SNSTopicListAccess", "Effect": "Allow", "Action": [ "sns:ListTopics" ], "Resource": "*" }, { "Sid": "CodeStarNotificationsChatbotAccess", "Effect": "Allow", "Action": [ "chatbot:DescribeSlackChannelConfigurations", "chatbot:ListMicrosoftTeamsChannelConfigurations" ], "Resource": "*" }

Autorizzazioni correlate alle notifiche nelle policy gestite di sola lettura

Le policy gestite AWSCodeDeployReadOnlyAccess includono le seguenti dichiarazioni per consentire l'accesso in sola lettura alle notifiche. Gli utenti con questa policy applicata possono visualizzare le notifiche per le risorse, ma non possono crearle, gestirle o sottoscriverle.

{ "Sid": "CodeStarNotificationsPowerUserAccess", "Effect": "Allow", "Action": [ "codestar-notifications:DescribeNotificationRule" ], "Resource": "*", "Condition" : { "StringLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codedeploy:*"} } }, { "Sid": "CodeStarNotificationsListAccess", "Effect": "Allow", "Action": [ "codestar-notifications:ListNotificationRules", "codestar-notifications:ListEventTypes", "codestar-notifications:ListTargets" ], "Resource": "*" }

Per ulteriori informazioni IAM e notifiche, vedere Identity and Access Management for AWS CodeStar Notifications.