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à.
Prevenzione del confused deputy tra servizi
Il problema confused deputy è un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire un'azione può costringere un'entità maggiormente privilegiata a eseguire l'azione. Nel frattempo AWS, l'impersonificazione tra servizi può causare il confuso problema del vice. La rappresentazione tra servizi può verificarsi quando un servizio (il servizio chiamante) effettua una chiamata a un altro servizio (il servizio chiamato). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare che ciò accada, AWS mette a disposizione strumenti che consentono di proteggere i dati relativi a tutti i servizi con responsabili del servizio a cui è stato concesso l'accesso alle risorse del vostro account.
Ti consigliamo di utilizzare le chiavi aws: SourceArn e aws: SourceAccount global condition context nelle politiche delle risorse per limitare le autorizzazioni che CodeDeploy forniscono un altro servizio alla risorsa. Se si utilizzano entrambe le chiavi di contesto delle condizioni globali e il valore aws:SourceArn
contiene l'ID account, il valore aws:SourceAccount
e l'account nel valore aws:SourceArn
deve utilizzare lo stesso ID account nella stessa dichiarazione di policy. Utilizzare aws:SourceArn
se si desidera consentire l'associazione di una sola risorsa all'accesso tra servizi. Utilizza aws:SourceAccount
se desideri che qualsiasi risorsa in quell'account sia associata all'uso tra servizi.
Per le ECS distribuzioni EC2 /On-Premises, AWS Lambda e Amazon regolari, il valore di aws:SourceArn
dovrebbe includere il gruppo di CodeDeploy distribuzione ARN con cui CodeDeploy è consentito assumere il ruolo. IAM
Per le distribuzioni Amazon ECS blue/green create tramite AWS CloudFormation, il valore di aws:SourceArn
dovrebbe includere lo CloudFormation stack ARN con cui CodeDeploy è consentito assumere il ruolo. IAM
Il modo più efficace per proteggersi dal confuso problema del vicesceriffo consiste nell'utilizzare la aws:SourceArn
chiave con tutte le risorse a disposizione. ARN Se non conosci la versione completa ARN o se stai specificando più risorse, usa i caratteri jolly (*) per le parti sconosciute.
Ad esempio, puoi utilizzare la seguente policy di fiducia con una distribuzione EC2 /On-Premises, AWS Lambda o Amazon normale: ECS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "codedeploy.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
111122223333
" }, "StringLike": { "aws:SourceArn": "arn:aws:codedeploy:us-east-1
:111122223333
:deploymentgroup:myApplication
/*" } } } ] }
Per una distribuzione Amazon ECS blue/green creata tramite AWS CloudFormation, puoi utilizzare:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "codedeploy.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
111122223333
" }, "StringLike": { "aws:SourceArn": "arn:aws:cloudformation:us-east-1
:111122223333
:stack/MyCloudFormationStackName
/*" } } } ] }