Prevenzione del problema "confused deputy" tra servizi - Amazon SageMaker

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 problema "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. In AWS, il problema del sostituto confuso può insorgere a causa dell'impersonificazione tra diversi servizi. L'impersonificazione tra servizi può verificarsi quando un servizio (il servizio chiamante) richiama un altro servizio (il servizio chiamato) e sfrutta le autorizzazioni elevate del servizio chiamato per agire su risorse a cui il servizio chiamante non è autorizzato ad accedere. Per impedire l'accesso non autorizzato dovuto al problema del confuso vice, AWS fornisce strumenti per contribuire a proteggere i dati in tutti i servizi. Questi strumenti ti aiutano a controllare le autorizzazioni concesse ai responsabili del servizio, limitando il loro accesso solo alle risorse necessarie del tuo account. Gestendo attentamente i privilegi di accesso dei responsabili dei servizi, puoi contribuire a mitigare il rischio che i servizi accedano in modo improprio a dati o risorse per i quali non dovrebbero avere le autorizzazioni.

Continua a leggere per una guida generale o vai a un esempio per una funzionalità specifica: SageMaker

Limita le autorizzazioni con le chiavi di condizione globali

Ti consigliamo di utilizzare le chiavi aws:SourceArn e aws:SourceAccount global condition nelle politiche delle risorse per limitare le autorizzazioni alla risorsa che Amazon SageMaker fornisce a un altro servizio. Se si utilizzano entrambe le chiavi di condizione 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 consentire l'associazione di qualsiasi risorsa in tale account all'uso tra servizi.

Il modo più efficace per proteggersi dal confuso problema del vice è utilizzare la chiave aws:SourceArn global condition con tutta ARN la risorsa. Se non conosci la dimensione completa ARN della risorsa o se stai specificando più risorse, usa la chiave aws:SourceArn global condition con wildcards (*) per le parti sconosciute di. ARN Ad esempio arn:aws:sagemaker:*:123456789012:*.

L'esempio seguente mostra come utilizzare i tasti di condizione aws:SourceArn e aws:SourceAccount global condition SageMaker per evitare il confuso problema del vice.

{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, # Specify an action and resource policy for another service "Action": "service:ActionName", "Resource": [ "arn:aws:service:::ResourceName/*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:sagemaker:region:123456789012:*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }

SageMaker Edge Manager

L'esempio seguente mostra come è possibile utilizzare la chiave di condizione aws:SourceArn globale per evitare la confusione tra diversi servizi, problema associato a SageMaker Edge Manager creato in base al numero di account 123456789012 nel us-west-2 Regione.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:*" } } } }

Puoi sostituire il file aws:SourceArn contenuto in questo modello con l'intero processo ARN di imballaggio specifico per limitare ulteriormente le autorizzazioni.

SageMaker Immagini

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi il problema della confusione tra servizi diversi per SageMaker Images. Usa questo modello con Image o ImageVersion. Questo esempio utilizza un ImageVersion record ARN con il numero di account 123456789012. Si noti che, poiché il numero di conto fa parte del aws:SourceArn valore, non è necessario specificare un aws:SourceAccount valore.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:sagemaker:us-west-2:123456789012:image-version" } } } }

Non sostituitelo aws:SourceArn in questo modello con una versione completa ARN di un'immagine o di una versione dell'immagine specifica. ARNDeve essere nel formato fornito sopra e specificare image oimage-version. Il partition segnaposto deve indicare un AWS partizione commerciale () o un aws AWS in China partition (aws-cn), a seconda di dove è in esecuzione l'immagine o la versione dell'immagine. Analogamente, il region segnaposto in ARN può essere una qualsiasi regione valida in cui sono disponibili SageMaker immagini.

SageMaker Inferenza

L'esempio seguente mostra come utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi il problema dell'inferenza asincrona, SageMaker in tempo reale e senza server. Poiché il numero di account fa parte del valore aws:SourceArn, non è necessario specificare un valore aws:SourceAccount.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:*" } } } }

Non sostituite i dati contenuti aws:SourceArn in questo modello con quelli completi di un modello o ARN di un endpoint specifico. ARNDeve essere nel formato fornito sopra. L'asterisco nel ARN modello non rappresenta un carattere jolly e non deve essere modificato.

SageMaker Lavori di trasformazione in Batch

L'esempio seguente mostra come utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi il problema della confusione tra diversi servizi per i lavori di trasformazione SageMaker in batch creati in base al numero di account 123456789012 nel us-west-2 Regione. Si noti che, poiché il numero di conto è inserito inARN, non è necessario specificare un aws:SourceAccount valore.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:transform-job/*" } } } ] }

È possibile sostituirlo aws:SourceArn in questo modello con l'intero processo ARN di trasformazione in batch specifico per limitare ulteriormente le autorizzazioni.

SageMaker Marketplace

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi il problema dell'interservizio confuso tra servizi per le risorse del SageMaker Marketplace create in base al numero di account. 123456789012 nel us-west-2 Regione. Si noti che, poiché il numero di conto è inserito inARN, non è necessario specificare un aws:SourceAccount valore.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:*" } } } ] }

Non sostituitelo aws:SourceArn in questo modello con il pacchetto completo ARN di un algoritmo o di un pacchetto di modelli specifico. ARNDeve essere nel formato fornito sopra. L'asterisco nel ARN modello sta per wildcard e copre tutti i lavori di formazione, i modelli e i lavori di trasformazione in batch derivanti dalle fasi di convalida, nonché i pacchetti di algoritmi e modelli pubblicati su Marketplace. SageMaker

SageMaker Neo

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi un problema secondario confuso tra diversi servizi per i job di compilazione di SageMaker Neo creati in base al numero di conto 123456789012 nel us-west-2 Regione. Si noti che, poiché il numero di conto è inserito inARN, non è necessario specificare un aws:SourceAccount valore.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:compilation-job/*" } } } ] }

Puoi sostituirlo aws:SourceArn in questo modello con l'intero lavoro ARN di compilazione specifico per limitare ulteriormente le autorizzazioni.

SageMaker Condutture

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che Pipelines utilizzi i record di esecuzione delle pipeline provenienti da una o più SageMaker pipeline, generati dalla confusione tra diversi servizi. Si noti che, poiché il numero di account è inserito inARN, non è necessario specificare un valore. aws:SourceAccount

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:sagemaker:region:123456789012:pipeline/mypipeline/*" } } } ] }

Non sostituite il valore aws:SourceArn contenuto in questo modello con l'esecuzione completa ARN di una pipeline specifica. ARNDeve essere nel formato fornito sopra. Il partition segnaposto deve indicare un AWS partizione commerciale () o un aws AWS nella partizione cinese (aws-cn), a seconda di dove viene eseguita la pipeline. Analogamente, il region segnaposto in ARN può essere qualsiasi regione valida in cui SageMaker è disponibile Pipelines.

L'asterisco nel ARN modello sta per wildcard e copre tutte le esecuzioni di pipeline di una pipeline denominata. mypipeline Se desideri consentire le autorizzazioni AssumeRole per tutte le pipeline dell'account 123456789012 anziché per una pipeline specifica, allora aws:SourceArn dovrebbe essere arn:aws:sagemaker:*:123456789012:pipeline/*.

SageMaker Lavori di elaborazione

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi il problema della confusione tra diversi servizi per l' SageMaker elaborazione dei job creati in base al numero di conto 123456789012 nel us-west-2 Regione. Si noti che, poiché il numero di conto è inserito inARN, non è necessario specificare un aws:SourceAccount valore.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:processing-job/*" } } } ] }

È possibile sostituirlo aws:SourceArn in questo modello con l'intero processo ARN di elaborazione specifico per limitare ulteriormente le autorizzazioni.

SageMaker Studio

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che in SageMaker Studio si verifichi il problema della confusione tra diversi servizi, creato in base al numero di account 123456789012 nel us-west-2 Regione. Poiché il numero di account fa parte del valore aws:SourceArn, non è necessario specificare un valore aws:SourceAccount.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:*" } } } ] }

Non sostituitela aws:SourceArn in questo modello con la versione completa ARN di un'applicazione Studio, un profilo utente o un dominio specifici. ARNDeve essere nel formato fornito nell'esempio precedente. L'asterisco nel ARN modello non rappresenta un carattere jolly e non deve essere modificato.

SageMaker Lavori di formazione

L'esempio seguente mostra come è possibile utilizzare la chiave aws:SourceArn global condition per evitare che si verifichi il problema della confusione tra i vari servizi per i lavori di SageMaker formazione creati in base al numero di conto 123456789012 nel us-west-2 Regione. Si noti che, poiché il numero di conto è inserito inARN, non è necessario specificare un aws:SourceAccount valore.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:us-west-2:123456789012:training-job/*" } } } ] }

Puoi sostituire quello contenuto aws:SourceArn in questo modello con l'intero corso ARN di formazione specifico per limitare ulteriormente le autorizzazioni.

Argomento successivo

Per ulteriori informazioni sulla gestione dei ruoli di esecuzione, vedere SageMaker Ruoli.