View a markdown version of this page

Aggiungere Confused Deputy al motore di provisioning Terraform - AWS Service Catalog

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à.

Aggiungere Confused Deputy al motore di provisioning Terraform

Chiavi contestuali Confused Deputy sugli endpoint per limitare l'accesso alle operazioni lambda:Invoke

La funzione Lambda del parser parametrico creata AWS Service Catalog dai motori forniti ha una politica di accesso che concede l'autorizzazione lambda:Invoke tra account solo al principale del servizio: AWS Service Catalog

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-1:111122223333:function:ServiceCatalogTerraformOSParameterParser" } ] }

Questa dovrebbe essere l'unica autorizzazione necessaria per il corretto funzionamento dell'integrazione con. AWS Service Catalog Tuttavia, è possibile limitarlo ulteriormente utilizzando la chiave contestuale aws:SourceAccount Confused Deputy. Quando AWS Service Catalog invia messaggi a queste code, AWS Service Catalog compila la chiave con l'ID dell'account di provisioning. Ciò è utile quando intendi distribuire prodotti tramite la condivisione del portafoglio e vuoi assicurarti che solo account specifici utilizzino il tuo motore.

Ad esempio, puoi limitare il tuo motore in modo da consentire solo le richieste che provengono da 000000000000 e 1111 utilizzando la condizione mostrata di seguito:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-1:111122223333:function:ServiceCatalogTerraformOSParameterParser", "Condition": { "StringLike": { "aws:SourceAccount": [ "000000000000", "111111111111" ] } } } ] }

Chiavi contestuali Deputy confuse sugli endpoint per limitare l'accesso alle operazioni sqs:SendMessage

Le code di presa in carico delle operazioni di provisioning create AWS Service Catalog dai motori forniti da -provided hanno una politica di accesso che concede autorizzazioni sqs:SendMessage multiaccount (e KMS associate) solo al responsabile del servizio: AWS Service Catalog

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "Enable AWS Service Catalog to send messages to the queue", "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": "sqs:SendMessage", "Resource": [ "arn:aws:sqs:us-east-1:111122223333:ServiceCatalogTerraformOSProvisionOperationQueue" ] }, { "Sid": "Enable AWS Service Catalog encryption/decryption permissions when sending message to queue", "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": [ "kms:DescribeKey", "kms:Decrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key_id" } ] }

Questa dovrebbe essere l'unica autorizzazione necessaria per il corretto funzionamento dell'integrazione con. AWS Service Catalog Tuttavia, è possibile limitarlo ulteriormente utilizzando la chiave contestuale aws:SourceAccount Confused Deputy. Quando AWS Service Catalog invia messaggi a queste code, AWS Service Catalog compila le chiavi con l'ID dell'account di provisioning. Ciò è utile quando intendi distribuire prodotti tramite la condivisione del portafoglio e vuoi assicurarti che solo account specifici utilizzino il tuo motore.

Ad esempio, puoi limitare il tuo motore in modo da consentire solo le richieste che provengono da 000000000000 e 1111 utilizzando la condizione mostrata di seguito:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "Enable AWS Service Catalog to send messages to the queue", "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": "sqs:SendMessage", "Resource": [ "arn:aws:sqs:us-east-1:111122223333:ServiceCatalogTerraformOSProvisionOperationQueue" ], "Condition": { "StringLike": { "aws:SourceAccount": [ "000000000000", "111111111111" ] } } }, { "Sid": "Enable AWS Service Catalog encryption/decryption permissions when sending message to queue", "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": [ "kms:DescribeKey", "kms:Decrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key_id" } ] }