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à.
Come funziona App Runner con IAM
Prima di utilizzare App Runner IAM per gestire l'accesso a AWS App Runner, è necessario comprendere quali IAM funzionalità sono disponibili per l'uso con App Runner. Per avere una panoramica generale del funzionamento di App Runner e di altri AWS serviziIAM, consulta AWS Services That Work with IAM nella Guida per l'IAMutente.
Per altri argomenti sulla sicurezza di App Runner, consulta. Sicurezza in App Runner
Argomenti
Politiche basate sull'identità di App Runner
Con le politiche IAM basate sull'identità, puoi specificare azioni e risorse consentite o negate, nonché le condizioni in base alle quali le azioni sono consentite o negate. App Runner supporta azioni, risorse e chiavi di condizione specifiche. Per informazioni su tutti gli elementi utilizzati in una JSON policy, consulta IAMJSONPolicy Elements Reference nella Guida per l'IAMutente.
Azioni
Gli amministratori possono utilizzare AWS JSON le policy per specificare chi ha accesso a cosa. Cioè, quale principale può eseguire operazioni su quali risorse, e in quali condizioni.
L'Action
elemento di una JSON policy descrive le azioni che è possibile utilizzare per consentire o negare l'accesso a una policy. Le azioni politiche in genere hanno lo stesso nome dell' AWS APIoperazione associata. Esistono alcune eccezioni, come le azioni basate solo sulle autorizzazioni che non hanno un'operazione corrispondente. API Esistono anche alcune operazioni che richiedono più operazioni in una policy. Queste operazioni aggiuntive sono denominate operazioni dipendenti.
Includi le operazioni in una policy per concedere le autorizzazioni a eseguire l'operazione associata.
Le azioni politiche in App Runner utilizzano il seguente prefisso prima dell'azione:. apprunner:
Ad esempio, per concedere a qualcuno l'autorizzazione a eseguire un'EC2istanza Amazon con l'EC2RunInstances
APIoperazione Amazon, includi l'ec2:RunInstances
azione nella sua politica. Le istruzioni della policy devono includere un elemento Action
o NotAction
. App Runner definisce il proprio set di azioni che descrivono le attività che è possibile eseguire con questo servizio.
Per specificare più azioni in una sola istruzione, separa ciascuna di esse con una virgola come mostrato di seguito:
"Action": [ "apprunner:CreateService", "apprunner:CreateConnection" ]
È possibile specificare più azioni tramite caratteri jolly (*). Ad esempio, per specificare tutte le azioni che iniziano con la parola Describe
, includi la seguente azione:
"Action": "apprunner:Describe*"
Per visualizzare un elenco delle azioni di App Runner, consulta Azioni definite da AWS App Runner nel Service Authorization Reference.
Risorse
Gli amministratori possono utilizzare AWS JSON le policy per specificare chi ha accesso a cosa. Cioè, quale principale può eseguire operazioni su quali risorse, e in quali condizioni.
L'elemento Resource
JSON policy specifica l'oggetto o gli oggetti a cui si applica l'azione. Le istruzioni devono includere un elemento Resource
o un elemento NotResource
. Come best practice, specifica una risorsa utilizzando il relativo Amazon Resource Name (ARN). Puoi eseguire questa operazione per azioni che supportano un tipo di risorsa specifico, note come autorizzazioni a livello di risorsa.
Per le azioni che non supportano le autorizzazioni a livello di risorsa, ad esempio le operazioni di elenco, utilizza un carattere jolly (*) per indicare che l'istruzione si applica a tutte le risorse.
"Resource": "*"
Le risorse di App Runner hanno la seguente ARN struttura:
arn:aws:apprunner:
region
:account-id
:resource-type
/resource-name
[/resource-id
]
Per ulteriori informazioni sul formato diARNs, consulta Amazon Resource Names (ARNs) e AWS Service Namespaces nel. Riferimenti generali di AWS
Ad esempio, per specificare il my-service
servizio nella tua dichiarazione, utilizza quanto segue: ARN
"Resource": "arn:aws:apprunner:us-east-1:123456789012:service/my-service"
Per specificare tutti i servizi che appartengono a un account specifico, usa il carattere jolly (*):
"Resource": "arn:aws:apprunner:us-east-1:123456789012:service/*"
Alcune azioni di App Runner, come quelle per la creazione di risorse, non possono essere eseguite su una risorsa specifica. In questi casi, è necessario utilizzare il carattere jolly (*).
"Resource": "*"
Per visualizzare un elenco dei tipi di risorse di App Runner e relativiARNs, consulta Risorse definite da AWS App Runner nel Service Authorization Reference. Per sapere con quali azioni è possibile specificare le caratteristiche ARN di ciascuna risorsa, consulta Azioni definite da AWS App Runner.
Chiavi di condizione
Gli amministratori possono utilizzare AWS JSON le policy per specificare chi ha accesso a cosa. Cioè, quale principale può eseguire azioni su quali risorse, e in quali condizioni.
L'elemento Condition
(o blocco Condition
) consente di specificare le condizioni in cui un'istruzione è in vigore. L'elemento Condition
è facoltativo. Puoi compilare espressioni condizionali che utilizzano operatori di condizione, ad esempio uguale a o minore di, per soddisfare la condizione nella policy con i valori nella richiesta.
Se specifichi più elementi Condition
in un'istruzione o più chiavi in un singolo elemento Condition
, questi vengono valutati da AWS utilizzando un'operazione AND
logica. Se si specificano più valori per una singola chiave di condizione, AWS valuta la condizione utilizzando un'operazione logicaOR
. Tutte le condizioni devono essere soddisfatte prima che le autorizzazioni dell'istruzione vengano concesse.
Puoi anche utilizzare variabili segnaposto quando specifichi le condizioni. Ad esempio, è possibile concedere a un IAM utente l'autorizzazione ad accedere a una risorsa solo se è contrassegnata con il suo nome IAM utente. Per ulteriori informazioni, consulta gli elementi IAM della politica: variabili e tag nella Guida IAM per l'utente.
AWS supporta chiavi di condizione globali e chiavi di condizione specifiche del servizio. Per visualizzare tutte le chiavi di condizione AWS globali, consulta le chiavi di contesto delle condizioni AWS globali nella Guida per l'IAMutente.
App Runner supporta l'utilizzo di alcuni tasti di condizione globali. Per visualizzare tutte le chiavi di condizione AWS globali, consulta AWS Global Condition Context Keys nella Guida per l'IAMutente.
App Runner definisce un set di chiavi di condizione specifiche del servizio. Inoltre, App Runner supporta il controllo degli accessi basato su tag, che viene implementato utilizzando chiavi condizionali. Per informazioni dettagliate, consultare Autorizzazione basata sui tag App Runner.
Per visualizzare un elenco delle chiavi di condizione di App Runner, consulta Condition keys for AWS App Runner nel Service Authorization Reference. Per sapere con quali azioni e risorse puoi utilizzare una chiave di condizione, vedi Azioni definite da AWS App Runner.
Esempi
Per visualizzare esempi di politiche basate sull'identità di App Runner, consulta. Esempi di policy basate sull'identità di App Runner
Politiche basate sulle risorse di App Runner
App Runner non supporta politiche basate sulle risorse.
Autorizzazione basata sui tag App Runner
Puoi allegare tag alle risorse di App Runner o passare i tag in una richiesta ad App Runner. Per controllare l'accesso basato su tag, fornisci informazioni sui tag nell'elemento condizione di una policy utilizzando le chiavi di condizione apprunner:ResourceTag/
, key-name
aws:RequestTag/
o key-name
aws:TagKeys
. Per ulteriori informazioni sull'etichettatura delle risorse di App Runner, consulta. Configurazione di un servizio App Runner
Per visualizzare una policy basata sulle identità di esempio per limitare l'accesso a una risorsa basata su tag su tale risorsa, consulta Controllo dell'accesso ai servizi App Runner in base ai tag.
Autorizzazioni utente di App Runner
Per utilizzare App Runner, IAM gli utenti devono disporre delle autorizzazioni per le azioni di App Runner. Un modo comune per concedere le autorizzazioni agli utenti consiste nell'allegare una policy a utenti o gruppi. IAM Per ulteriori informazioni sulla gestione delle autorizzazioni degli utenti, consulta Modifica delle autorizzazioni per un IAM utente nella Guida per l'utente. IAM
App Runner offre due policy gestite che puoi allegare ai tuoi utenti.
-
AWSAppRunnerReadOnlyAccess
— Concede le autorizzazioni per elencare e visualizzare i dettagli sulle risorse di App Runner. -
AWSAppRunnerFullAccess
— Concede le autorizzazioni a tutte le azioni di App Runner.
Per un controllo più granulare delle autorizzazioni degli utenti, puoi creare una policy personalizzata e allegarla ai tuoi utenti. Per i dettagli, consulta Creazione IAM di politiche nella Guida per l'IAMutente.
Per esempi di politiche per gli utenti, vederePolicy utente.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "apprunner:List*", "apprunner:Describe*" ], "Resource": "*" } ] }
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": [ "arn:aws:iam::*:role/aws-service-role/apprunner.amazonaws.com/AWSServiceRoleForAppRunner", "arn:aws:iam::*:role/aws-service-role/networking.apprunner.amazonaws.com/AWSServiceRoleForAppRunnerNetworking" ], "Condition": { "StringLike": { "iam:AWSServiceName": [ "apprunner.amazonaws.com", "networking.apprunner.amazonaws.com" ] } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringLike": { "iam:PassedToService": "apprunner.amazonaws.com" } } }, { "Sid": "AppRunnerAdminAccess", "Effect": "Allow", "Action": "apprunner:*", "Resource": "*" } ] }
Ruoli di App Runner IAM
Un IAMruolo è un'entità interna all'utente Account AWS che dispone di autorizzazioni specifiche.
Ruoli collegati ai servizi
I ruoli collegati ai AWS servizi consentono ai servizi di accedere alle risorse di altri servizi per completare un'azione per conto dell'utente. I ruoli collegati ai servizi vengono visualizzati nell'IAMaccount e sono di proprietà del servizio. Un IAM amministratore può visualizzare ma non modificare le autorizzazioni per i ruoli collegati al servizio.
App Runner supporta i ruoli collegati ai servizi. Per informazioni sulla creazione o la gestione di ruoli collegati ai servizi App Runner, consulta. Utilizzo di ruoli collegati ai servizi per App Runner
Ruoli dei servizi
Questa caratteristica consente a un servizio di assumere un ruolo di servizio per conto dell'utente. Questo ruolo consente al servizio di accedere alle risorse in altri servizi per completare un'azione per conto dell'utente. I ruoli di servizio vengono visualizzati nell'IAMaccount e sono di proprietà dell'account. Ciò significa che un IAM utente può modificare le autorizzazioni per questo ruolo. Tuttavia, il farlo potrebbe pregiudicare la funzionalità del servizio.
App Runner supporta alcuni ruoli di servizio.
Ruolo di accesso
Il ruolo di accesso è un ruolo utilizzato da App Runner per accedere alle immagini in Amazon Elastic Container Registry (AmazonECR) nel tuo account. È necessario per accedere a un'immagine in Amazon ECR e non è richiesto con Amazon ECR Public. Prima di creare un servizio basato su un'immagine in AmazonECR, crea un ruolo di servizio e utilizza la policy AWSAppRunnerServicePolicyForECRAccess
gestita al suo interno. IAM Puoi quindi passare questo ruolo ad App Runner quando chiami il CreateServiceAPIAuthenticationConfigurationmembro del SourceConfigurationparametro o quando usi la console App Runner per creare un servizio.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchCheckLayerAvailability", "ecr:BatchGetImage", "ecr:DescribeImages", "ecr:GetAuthorizationToken" ], "Resource": "*" } ] }
Nota
Se crei una politica personalizzata per il tuo ruolo di accesso, assicurati di specificare "Resource": "*"
l'azioneecr:GetAuthorizationToken
. I token possono essere utilizzati per accedere a qualsiasi ECR registro Amazon a cui hai accesso.
Quando crei il tuo ruolo di accesso, assicurati di aggiungere una politica di fiducia che dichiari il responsabile del servizio App Runner build.apprunner.amazonaws.com
come entità attendibile.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "build.apprunner.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Se utilizzi la console App Runner per creare un servizio, la console può creare automaticamente un ruolo di accesso per te e sceglierlo per il nuovo servizio. La console elenca anche altri ruoli nel tuo account e, se lo desideri, puoi selezionare un ruolo diverso.
Ruolo dell'istanza
Il ruolo di istanza è un ruolo opzionale utilizzato da App Runner per fornire le autorizzazioni alle azioni di AWS servizio necessarie alle istanze di calcolo del servizio. È necessario fornire un ruolo di istanza ad App Runner se il codice dell'applicazione chiama actions (). AWS APIs Incorpora le autorizzazioni richieste nel ruolo dell'istanza o crea una politica personalizzata e usala nel ruolo di istanza. Non abbiamo modo di anticipare le chiamate utilizzate dal tuo codice. Pertanto, non forniamo una politica gestita per questo scopo.
Prima di creare un servizio App Runner, utilizza questa IAM opzione per creare un ruolo di servizio con le politiche personalizzate o integrate richieste. È quindi possibile passare questo ruolo ad App Runner come ruolo di istanza quando si chiama il CreateServiceAPIInstanceRoleArn
membro del InstanceConfigurationparametro o quando si utilizza la console App Runner per creare un servizio.
Quando crei il tuo ruolo di istanza, assicurati di aggiungere una politica di fiducia che dichiari il responsabile del servizio App Runner tasks.apprunner.amazonaws.com
come entità attendibile.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "tasks.apprunner.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Se utilizzi la console App Runner per creare un servizio, la console elenca i ruoli del tuo account e puoi selezionare il ruolo che hai creato a tale scopo.
Per informazioni sulla creazione di un servizio, consultaCreazione di un servizio App Runner.