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 CodeBuild Zustandstasten
AWS CodeBuild stellt eine Reihe von Bedingungsschlüsseln bereit, die Sie in IAM-Richtlinien verwenden können, um Ihre Unternehmensrichtlinien für CodeBuild Ressourcen wie Projekte und Flotten durchzusetzen. Die Bedingungsschlüssel decken die meisten CodeBuild API-Anforderungskontexte ab, einschließlich Netzwerkeinstellungen, Konfigurationen von Anmeldeinformationen und Recheneinschränkungen.
Themen
Setzen Sie VPC-Konnektivitätseinstellungen für Ihre Projekte und Flotten durch
Diese Richtlinie ermöglicht es dem Aufrufer VPCs, bei der Erstellung CodeBuild von Projekten und Flotten die ausgewählten Subnetze und Sicherheitsgruppen zu verwenden. Weitere Informationen zu mehrwertigen Kontextschlüsseln finden Sie unter Einwertige und mehrwertige Kontextschlüssel.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "codebuild:CreateProject", "codebuild:CreateFleet" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "codebuild:vpcConfig.vpcId": [ "vpc-01234567890abcdef", "vpc-abcdef01234567890" ], "codebuild:vpcConfig.subnets": [ "subnet-1234abcd", "subnet-5678abcd" ], "codebuild:vpcConfig.securityGroupIds": [ "sg-12345678abcdefghij", "sg-01234567abcdefghij" ] } } }] }
Verhindern Sie unbefugte Änderungen an der Buildspec des Projekts
Diese Richtlinie erlaubt es dem Aufrufer nicht, die Buildspezifikation im Feld zu überschreiben. buildspecOverride
Anmerkung
Der codebuild:source.buildspec
Bedingungsschlüssel unterstützt nur den Null-Operator, um das Vorhandensein des API-Felds zu überprüfen. Der Inhalt der Buildspec wird nicht ausgewertet.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "codebuild:StartBuild", "Resource": "*" }, { "Effect": "Deny", "Action": "codebuild:StartBuild", "Resource": "*", "Condition": { "Null": { "codebuild:source.buildspec": "false" } } }] }
Beschränken Sie die Berechnungstypen für Ihre Builds
Diese Richtlinie ermöglicht die Erstellung von Flotten, die nur mit dem Instance-Typ c5.large
oder mit dem m5.large
Computing-Instance-Typ gebaut werden können.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "codebuild:CreateFleet", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "codebuild:computeConfiguration.instanceType": ["c5.large", "m5.large"] } } }] }
Steuern Sie die Einstellungen der Umgebungsvariablen
Diese Richtlinie ermöglicht es dem Aufrufer, die STAGE
Umgebungsvariable so zu überschreiben, dass sie entweder oder ist. BETA
GAMMA
Außerdem verweigert sie ausdrücklich das Überschreiben von be PRODUCTION
und verweigert STAGE
das Überschreiben der Umgebungsvariablen. MY_APP_VERSION
Informationen zu Kontextschlüsseln mit mehreren Werten finden Sie unter Einwertige und mehrwertige Kontextschlüssel.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codebuild:StartBuild" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "codebuild:environment.environmentVariables/STAGE.value": [ "BETA", "GAMMA" ] } } }, { "Effect": "Deny", "Action": [ "codebuild:StartBuild" ], "Resource": "*", "Condition": { "StringEquals": { "codebuild:environment.environmentVariables/STAGE.value": "PRODUCTION" }, "ForAnyValue:StringEquals": { "codebuild:environment.environmentVariables.name": [ "MY_APP_VERSION" ] } } } ] }
Verwenden Sie Variablen in Namen von Bedingungsschlüsseln
Sie können Variablen in Bedingungsschlüsselnamen wie secondarySources/${sourceIdentifier}.location
und verwendensecondaryArtifacts/${artifactIdentifier}.location
, wobei Sie Ihre sekundäre Quelle oder Ihren sekundären Artefakt-Identifier in der IAM-Richtlinie angeben können. Die folgende Richtlinie ermöglicht es dem Aufrufer, ein Projekt mit einem bestimmten Quellspeicherort für die Sekundärquelle zu erstellen. mySecondSource
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:CreateProject", "Resource": "*", "Condition": { "StringEquals": { "codebuild:secondarySources/mySecondSource.location": "my-source-location" } } } ] }
Überprüfen Sie das Vorhandensein von Attributen in API-Anfragen
CodeBuild unterstützt Bedingungsschlüssel, um das Vorhandensein einiger Felder in der API-Anfrage zu überprüfen. Die Richtlinie setzt die VPC-Anforderung bei der Erstellung oder Aktualisierung von Projekten durch.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "codebuild:CreateProject", "codebuild:UpdateProject" ], "Resource": "*", "Condition": { "Null": { "codebuild:vpcConfig": "false" } } }] }