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à.
Elementi delle policy JSON IAM: Resource
In una istruzione di policy IAM, l'elemento Resource
definisce l'oggetto o gli oggetti a cui si applica l'istruzione. Le istruzioni devono includere un elemento Resource
o un elemento NotResource
.
Specifica una risorsa utilizzando un nome della risorsa Amazon (ARN). Il formato dell'ARN dipende dal Servizio AWS e dalla risorsa specifica a cui si fa riferimento. Sebbene il formato ARN vari, si utilizza sempre un ARN per identificare una risorsa. Per ulteriori informazioni sul formato di ARN, consulta ARN IAM. Per informazioni su come specificare una risorsa, consulta la documentazione relativa al servizio per la quale desideri scrivere un'istruzione.
Nota
Alcuni Servizi AWS non consentono di specificare azioni per singole risorse. In questi casi, tutte le azioni elencate nell'elemento Action
o NotAction
si applicano a tutte le risorse di quel servizio. In questo caso, viene utilizzato il carattere jolly (*
) nell'elemento Resource
.
L'esempio seguente si riferisce a una determinata coda Amazon SQS.
"Resource": "arn:aws:sqs:us-east-2:
account-ID-without-hyphens
:queue1"
L'esempio seguente si riferisce all'utente IAM denominato Bob
in un Account AWS.
Nota
Nell'elemento Resource
, il nome utente IAM prevede una distinzione tra lettere minuscole e maiuscole.
"Resource": "arn:aws:iam::
account-ID-without-hyphens
:user/Bob"
Utilizzo di caratteri jolly negli ARN delle risorse
È possibile utilizzare caratteri jolly (*
e ?
) all'interno di singoli segmenti di un ARN (le parti separate da due punti) per rappresentare:
-
Qualsiasi combinazione di caratteri (
*
) -
Qualsiasi carattere singolo (
?
)
È possibile utilizzare più caratteri *
o ?
in ogni segmento. Se il carattere jolly *
è l'ultimo carattere del segmento dell'ARN di una risorsa, può espandersi fino a superare i limiti dei due punti. Consigliamo di utilizzare i caratteri jolly (*
e ?
) all'interno dei segmenti dell'ARN separati da due punti.
Nota
Non è possibile utilizzare un carattere jolly nel segmento di servizio che identifica il prodotto AWS. Per ulteriori informazioni sui segmenti degli ARN, consulta Identificare le risorse AWS con i nomi delle risorse Amazon (ARN)
L'esempio seguente si riferisce a tutti gli utenti IAM il cui percorso è /accounting
.
"Resource": "arn:aws:iam::
account-ID-without-hyphens
:user/accounting/*"
L'esempio seguente si riferisce a tutti gli elementi all'interno di un determinato bucket Amazon S3.
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
Il carattere asterisco (*
) può espandersi per sostituire tutto all'interno di un segmento, inclusi caratteri come una barra (/
) che potrebbero sembrare un delimitatore all'interno di un determinato spazio dei nomi del servizio. Ad esempio, considera il seguente ARN di Amazon S3 come la stessa logica di espansione con caratteri jolly si applica a tutti i servizi.
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*/test/*"
I caratteri jolly nell'ARN si applicano a tutti i seguenti oggetti nel bucket, non solo al primo oggetto elencato.
amzn-s3-demo-bucket/1/test/object.jpg amzn-s3-demo-bucket/1/2/test/object.jpg amzn-s3-demo-bucket/1/2/test/3/object.jpg amzn-s3-demo-bucket/1/2/3/test/4/object.jpg amzn-s3-demo-bucket/1///test///object.jpg amzn-s3-demo-bucket/1/test/.jpg amzn-s3-demo-bucket//test/object.jpg amzn-s3-demo-bucket/1/test/
Considera gli ultimi due oggetti dell'elenco precedente. Il nome di un oggetto Amazon S3 può iniziare o terminare validamente con il carattere barra (/
) del delimitatore convenzionale. Mentre /
funziona come delimitatore, non vi è alcun significato specifico quando questo carattere viene utilizzato all'interno dell'ARN di una risorsa. Viene trattato come qualsiasi altro carattere valido. L'ARN non corrisponde ai seguenti oggetti:
amzn-s3-demo-bucket/1-test/object.jpg amzn-s3-demo-bucket/test/object.jpg amzn-s3-demo-bucket/1/2/test.jpg
Specifica di più risorse
È possibile specificare più risorse nell'elemento Resource
utilizzando un array di ARN. L'esempio seguente si riferisce a due tabelle DynamoDB.
"Resource": [ "arn:aws:dynamodb:us-east-2:
account-ID-without-hyphens
:table/books_table", "arn:aws:dynamodb:us-east-2:account-ID-without-hyphens
:table/magazines_table" ]
Utilizzo delle variabili delle policy negli ARN delle risorse
Nell'elemento Resource
, puoi utilizzare le variabili di policy JSON nella parte dell'ARN che identifica la risorsa specifica (ovvero nella parte finale di ARN). Ad esempio, puoi utilizzare la chiave {aws:username}
come parte di una risorsa ARN per indicare che l'attuale nome dell'utente deve essere incluso come parte del nome della risorsa. L'esempio seguente mostra come puoi utilizzare la chiave {aws:username}
in un elemento Resource
. La policy consente l'accesso a una tabella Amazon DynamoDB che corrisponde al nome dell'utente corrente.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:us-east-2:
account-id
:table/${aws:username}" } }
Per ulteriori informazioni sulle variabili di policy JSON, consultare la pagina Elementi delle policy IAM: variabili e tag.