AWS verwaltete (vordefinierte) Richtlinien für CodeDeploy - AWS CodeDeploy

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS verwaltete (vordefinierte) Richtlinien für CodeDeploy

AWS adressiert viele gängige Anwendungsfälle durch die Bereitstellung eigenständiger IAM-Richtlinien, die von erstellt und verwaltet AWS werden. Diese AWS verwalteten Richtlinien gewähren Berechtigungen für allgemeine Anwendungsfälle, sodass Sie nicht erst untersuchen müssen, welche Berechtigungen erforderlich sind. Weitere Informationen finden Sie unter Von AWS verwaltete Richtlinien im IAM-Benutzerhandbuch.

Liste der AWS verwalteten Richtlinien für CodeDeploy

Die folgenden AWS verwalteten Richtlinien, die Sie Benutzern in Ihrem Konto zuordnen können, sind spezifisch für CodeDeploy:

  • AWSCodeDeployFullAccess: Gewährt uneingeschränkten Zugriff auf CodeDeploy.

    Anmerkung

    AWSCodeDeployFullAccess gewährt keine Berechtigungen für Operationen in anderen Services, die für die Bereitstellung Ihrer Anwendungen erforderlich sind, wie Amazon EC2 und Amazon S3, sondern nur für spezifische Operationen von. CodeDeploy

  • AWSCodeDeployDeployerAccess: Erteilt die Genehmigung zur Registrierung und Bereitstellung von Revisionen.

     

  • AWSCodeDeployReadOnlyAccess: Gewährt schreibgeschützten Zugriff auf CodeDeploy.

     

  • AWSCodeDeployRole: Erlaubt CodeDeploy :

    • lesen Sie die Tags auf Ihren Instances oder identifizieren Sie Ihre Amazon EC2-Instances anhand der Amazon EC2 Auto Scaling Scaling-Gruppennamen

    • Amazon EC2 Auto Scaling-Gruppen, Lifecycle-Hooks, Skalierungsrichtlinien und Warm-Pool-Funktionen lesen, erstellen, aktualisieren und löschen

    • Informationen zu Amazon SNS SNS-Themen veröffentlichen

    • Informationen über CloudWatch Amazon-Alarme abrufen

    • Ressourcen im Elastic Load Balancing Service lesen und aktualisieren

    Die Richtlinie enthält den folgenden Code:

    { "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: CodeDeploy Erteilt Zugriffsberechtigungen AWS Lambda und alle anderen Ressourcen, die für eine Bereitstellung erforderlich sind.

     

  • AWSCodeDeployRoleForECS: CodeDeploy Erteilt die Genehmigung für den Zugriff auf Amazon ECS und alle anderen Ressourcen, die für eine Bereitstellung erforderlich sind.

     

  • AWSCodeDeployRoleForECSLimited: CodeDeploy Erteilt die Genehmigung für den Zugriff auf Amazon ECS und alle anderen Ressourcen, die für eine Bereitstellung erforderlich sind, mit den folgenden Ausnahmen:

    • In dem hooks Abschnitt der AppSpec Datei CodeDeployHook_ können nur Lambda-Funktionen verwendet werden, deren Namen mit beginnen. Weitere Informationen finden Sie unter AppSpec Abschnitt „Hooks“ für eine Amazon ECS-Bereitstellung.

    • S3-Bucket-Zugriff ist auf S3-Buckets mit dem Registrierungs-Tag UseWithCodeDeploy beschränkt, für das der Wert true festgelegt ist. Weitere Informationen finden Sie unter Objekt-Tagging.

  • AmazonEC2RoleforAWSCodeDeployLimited: CodeDeploy Erteilt die Erlaubnis, Objekte in einem CodeDeploy Amazon S3 S3-Bucket abzurufen und aufzulisten. Die Richtlinie enthält den folgenden Code:

    { "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" } } } ] }

Berechtigungen für einige Aspekte des Bereitstellungsprozesses werden zwei anderen Rollentypen erteilt, die im Namen von agieren CodeDeploy:

  • Ein IAM-Instance-Profil ist eine IAM-Rolle, die Sie Ihren Amazon EC2 EC2-Instances zuordnen. Dieses Profil beinhaltet die erforderlichen Berechtigungen für den Zugriff auf die Amazon S3 S3-Buckets oder GitHub Repositorys, in denen die Anwendungen gespeichert sind. Weitere Informationen finden Sie unter Schritt 4: Erstellen Sie ein IAM-Instance-Profil für Ihre Amazon EC2 EC2-Instances.

  • Eine Servicerolle ist eine IAM-Rolle, die einem AWS Service Berechtigungen erteilt, sodass dieser auf Ressourcen zugreifen kann. AWS Die Richtlinien, die Sie der Servicerolle zuordnen, bestimmen, auf welche AWS Ressourcen der Dienst zugreifen kann und welche Aktionen er mit diesen Ressourcen ausführen kann. Denn CodeDeploy eine Servicerolle wird für Folgendes verwendet:

    • Um entweder die auf die Instances angewendeten Tags oder die Amazon EC2 Auto Scaling Scaling-Gruppennamen zu lesen, die den Instances zugeordnet sind. Auf diese Weise können CodeDeploy Instances identifiziert werden, auf denen Anwendungen bereitgestellt werden können.

    • Um Operationen auf Instances, Amazon EC2 Auto Scaling Scaling-Gruppen und Elastic Load Balancing Balancing-Load Balancers durchzuführen.

    • Um Informationen zu Amazon SNS SNS-Themen zu veröffentlichen, sodass Benachrichtigungen gesendet werden können, wenn bestimmte Bereitstellungs- oder Instance-Ereignisse eintreten.

    • Zum Abrufen von Informationen über CloudWatch Alarme, um die Alarmüberwachung für Bereitstellungen einzurichten.

    Weitere Informationen finden Sie unter Schritt 2: Erstellen Sie eine Servicerolle für CodeDeploy.

Sie können auch benutzerdefinierte IAM-Richtlinien erstellen, um Berechtigungen für CodeDeploy Aktionen und Ressourcen zu erteilen. Sie fügen diese benutzerdefinierten Richtlinien den IAM-Rollen hinzu und weisen die Rollen dann Benutzern oder Gruppen zu, die die Berechtigungen benötigen.

CodeDeploy verwaltete Richtlinien und Benachrichtigungen

CodeDeploy unterstützt Benachrichtigungen, mit denen Benutzer über wichtige Änderungen an Bereitstellungen informiert werden können. Zu den verwalteten Richtlinien CodeDeploy gehören auch Richtlinienerklärungen für die Benachrichtigungsfunktion. Weitere Informationen finden Sie unter Was sind Benachrichtigungen?.

Berechtigungen in Zusammenhang mit Benachrichtigungen in verwalteten Vollzugriffsrichtlinien

Die von AWSCodeDeployFullAccess verwaltete Richtlinie enthält die folgenden Anweisungen, um den vollständigen Zugriff auf Benachrichtigungen zu ermöglichen. Benutzer, für die diese verwaltete Richtlinie gilt, können auch Amazon SNS SNS-Themen für Benachrichtigungen erstellen und verwalten, Benutzer für Themen abonnieren und abbestellen, Themen auflisten, die als Ziele für Benachrichtigungsregeln ausgewählt werden sollen, und für Slack konfigurierte AWS Chatbot Clients auflisten.

{ "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": "*" }

Berechtigungen in Zusammenhang mit Benachrichtigungen in schreibgeschützten verwalteten Richtlinien

Die verwaltete Richtlinie AWSCodeDeployReadOnlyAccess enthält die folgenden Anweisungen, um schreibgeschützten Zugriff auf Benachrichtigungen zu ermöglichen. Benutzer, auf die diese Richtlinie angewendet wird, können Benachrichtigungen für Ressourcen anzeigen, diese jedoch nicht erstellen, verwalten oder abonnieren.

{ "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": "*" }

Weitere Informationen zu IAM und Benachrichtigungen finden Sie unter Identity and Access Management für AWS CodeStar Benachrichtigungen.