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 CodeBuild tasti di condizione
AWS CodeBuild fornisce un set di chiavi di condizione che è possibile utilizzare nelle politiche IAM per applicare le politiche organizzative su CodeBuild risorse come progetti e flotte. Le chiavi di condizione coprono la maggior parte dei contesti di richiesta CodeBuild API, comprese le impostazioni di rete, le configurazioni delle credenziali e le restrizioni di elaborazione.
Applica le impostazioni di connettività VPC ai tuoi progetti e alle tue flotte
Questa policy consente al chiamante di utilizzare le sottoreti e i gruppi di sicurezza selezionati VPCs durante la creazione di progetti e flotte. CodeBuild Per ulteriori informazioni sulle chiavi di contesto multivalore, consulta Chiavi di contesto a valore singolo e chiavi di contesto multivalore.
{ "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" ] } } }] }
Impedisci modifiche non autorizzate al progetto buildspec
Questa politica non consente al chiamante di sovrascrivere il buildspec sul campo. buildspecOverride
Nota
La chiave codebuild:source.buildspec
condition supporta solo l'operatore Null per verificare l'esistenza del campo API. Non valuta il contenuto del buildspec.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "codebuild:StartBuild", "Resource": "*" }, { "Effect": "Deny", "Action": "codebuild:StartBuild", "Resource": "*", "Condition": { "Null": { "codebuild:source.buildspec": "false" } } }] }
Limita i tipi di calcolo per le tue build
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "codebuild:CreateFleet", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "codebuild:computeConfiguration.instanceType": ["c5.large", "m5.large"] } } }] }
Controlla le impostazioni delle variabili d'ambiente
Questa politica consente al chiamante di sostituire la variabile di STAGE
ambiente impostando o. BETA
GAMMA
Inoltre, nega esplicitamente che sia stato eseguito l'override e STAGE
nega l'override della PRODUCTION
variabile di ambiente. MY_APP_VERSION
Per le chiavi di contesto a più valori, consulta Chiavi di contesto a valore singolo e chiavi di contesto multivalore.
{ "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" ] } } } ] }
Usa le variabili nei nomi delle chiavi delle condizioni
È possibile utilizzare variabili nei nomi delle chiavi di condizione come secondarySources/${sourceIdentifier}.location
esecondaryArtifacts/${artifactIdentifier}.location
, dove è possibile specificare la fonte secondaria o l'identificatore di artefatto secondario nella policy IAM. La politica seguente consente al chiamante di creare un progetto con una posizione di origine specifica per la fonte secondaria. mySecondSource
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:CreateProject", "Resource": "*", "Condition": { "StringEquals": { "codebuild:secondarySources/mySecondSource.location": "my-source-location" } } } ] }
Verifica l'esistenza di attributi nelle richieste API
CodeBuild supporta le chiavi di condizione per verificare l'esistenza di alcuni campi nella richiesta API. La policy applica il requisito VPC durante la creazione o l'aggiornamento dei progetti.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "codebuild:CreateProject", "codebuild:UpdateProject" ], "Resource": "*", "Condition": { "Null": { "codebuild:vpcConfig": "false" } } }] }