IAMidentificatori - AWS Identity and Access Management

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

IAMidentificatori

IAMutilizza alcuni identificatori diversi per utenti, IAM gruppi, ruoli, politiche e certificati server. Questa sezione descrive gli identificatori e spiega quando vanno utilizzati.

Nomi descrittivi e percorsi

Quando crei un utente, un ruolo, un gruppo di utenti o una policy o quando carichi un certificato server, gli attribuisci un nome descrittivo. Gli esempi includono Bob, TestApp 1 ManageCredentialsPermissions, Developers o ProdServerCert.

Se usi IAM API or AWS Command Line Interface (AWS CLI) per creare IAM risorse, puoi aggiungere un percorso opzionale. Puoi decidere di usare un solo percorso o nidificare percorsi multipli come una struttura a cartelle. Ad esempio, puoi utilizzare il percorso nidificato /division_abc/subdivision_xyz/product_1234/engineering/ per farlo corrispondere alla struttura organizzativa della tua azienda. È quindi possibile creare una policy per consentire a tutti gli utenti in quel percorso di accedere al simulatore API di policy. Per visualizzare questa policy, consulta IAM: accesso all'API simulatore di policy basata sul percorso degli utenti. Per informazioni su come specificare un nome descrittivo, consulta la API documentazione per l'utente. Per ulteriori esempi di utilizzo dei percorsi, consulta IAM ARNs.

Quando si utilizza AWS CloudFormation per creare risorse, è possibile specificare un percorso per utenti, IAM gruppi e ruoli e politiche gestite dai clienti.

Se hai un utente e un gruppo di utenti nello stesso percorso, IAM non inserisce automaticamente l'utente in quel gruppo di utenti. Ad esempio, potresti creare il gruppo Sviluppatori e specificare come percorso come /division_abc/subdivision_xyz/product_1234/engineering/. Se crei un utente denominato Bob e gli aggiungi lo stesso percorso, Bob non viene inserito automaticamente all'interno del gruppo di utenti Sviluppatori. IAMnon impone limiti tra utenti o IAM gruppi in base ai loro percorsi. Utenti con percorsi differenti possono utilizzare le stesse risorse (supponendo che abbiano ricevuto le autorizzazioni per farlo). Il numero e la dimensione delle IAM risorse in un AWS account sono limitati. Per ulteriori informazioni, consulta IAMe AWS STS quote.

IAM ARNs

La maggior parte delle risorse dispone di nomi descrittivi: ad esempio, un utente denominato Bob o un gruppo di utenti denominato Developers. Tuttavia, il linguaggio della politica delle autorizzazioni richiede di specificare la risorsa o le risorse utilizzando il seguente formato Amazon Resource Name (ARN).

arn:partition:service:region:account:resource

Dove:

  • partition identifica la partizione in cui si trova la risorsa. Per le Regioni AWS standard, la partizione è aws. Se sono presenti risorse in altre partizioni, la partizione è aws-partitionname. Ad esempio, la partizione per le risorse nella regione Cina (Pechino) è aws-cn. Non è possibile delegare l'accesso tra account in partizioni diverse.

  • serviceidentifica il prodotto. AWS IAMle risorse vengono sempre utilizzateiam.

  • region identifica la regione della risorsa. Per quanto riguarda IAM le risorse, questo campo viene sempre lasciato vuoto.

  • accountspecifica l' Account AWS ID senza trattini.

  • resource identifica la risorsa specifica in base al nome.

È possibile specificare IAM e AWS STS ARNs utilizzare la seguente sintassi. La parte Regione di ARN è vuota perché IAM le risorse sono globali.

Sintassi:

arn:aws:iam::account:root arn:aws:iam::account:user/user-name-with-path arn:aws:iam::account:group/group-name-with-path arn:aws:iam::account:role/role-name-with-path arn:aws:iam::account:policy/policy-name-with-path arn:aws:iam::account:instance-profile/instance-profile-name-with-path arn:aws:sts::account:federated-user/user-name arn:aws:sts::account:assumed-role/role-name/role-session-name arn:aws:sts::account:self arn:aws:iam::account:mfa/virtual-device-name-with-path arn:aws:iam::account:u2f/u2f-token-id arn:aws:iam::account:server-certificate/certificate-name-with-path arn:aws:iam::account:saml-provider/provider-name arn:aws:iam::account:oidc-provider/provider-name

Molti degli esempi seguenti includono percorsi nella parte relativa alle risorse diARN. I percorsi non possono essere creati o modificati nella AWS Management Console. Per utilizzare i percorsi, è necessario utilizzare la risorsa utilizzando la AWS API AWS CLI, la o gli Strumenti per Windows PowerShell.

Esempi:

arn:aws:iam::123456789012:root arn:aws:iam::123456789012:user/JohnDoe arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/JaneDoe arn:aws:iam::123456789012:group/Developers arn:aws:iam::123456789012:group/division_abc/subdivision_xyz/product_A/Developers arn:aws:iam::123456789012:role/S3Access arn:aws:iam::123456789012:role/application_abc/component_xyz/RDSAccess arn:aws:iam::123456789012:role/aws-service-role/access-analyzer.amazonaws.com/AWSServiceRoleForAccessAnalyzer arn:aws:iam::123456789012:role/service-role/QuickSightAction arn:aws:iam::123456789012:policy/UsersManageOwnCredentials arn:aws:iam::123456789012:policy/division_abc/subdivision_xyz/UsersManageOwnCredentials arn:aws:iam::123456789012:instance-profile/Webserver arn:aws:sts::123456789012:federated-user/JohnDoe arn:aws:sts::123456789012:assumed-role/Accounting-Role/JaneDoe arn:aws:sts::123456789012:self arn:aws:iam::123456789012:mfa/JaneDoeMFA arn:aws:iam::123456789012:u2f/user/JohnDoe/default (U2F security key) arn:aws:iam::123456789012:server-certificate/ProdServerCert arn:aws:iam::123456789012:server-certificate/division_abc/subdivision_xyz/ProdServerCert arn:aws:iam::123456789012:saml-provider/ADFSProvider arn:aws:iam::123456789012:oidc-provider/GoogleProvider arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-west-2.amazonaws.com/id/a1b2c3d4567890abcdefEXAMPLE11111 arn:aws:iam::123456789012:oidc-provider/server.example.org

Gli esempi seguenti forniscono maggiori dettagli per aiutarvi a comprendere il ARN formato dei diversi tipi di AWS STS risorse IAM e.

  • Un utente IAM nell'account:

    Nota

    Ogni nome IAM utente è unico. Il nome utente non fa distinzione tra maiuscole e minuscole per l'utente, ad esempio durante la procedura di accesso, ma fa distinzione tra maiuscole e minuscole quando lo si utilizza in una politica o come parte di un. ARN

    arn:aws:iam::123456789012:user/JohnDoe
  • Altro utente con un percorso che riflette un organigramma:

    arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/JaneDoe
  • Un gruppo di utenti: IAM

    arn:aws:iam::123456789012:group/Developers
  • Un gruppo di IAM utenti con un percorso:

    arn:aws:iam::123456789012:group/division_abc/subdivision_xyz/product_A/Developers
  • Un ruolo IAM:

    arn:aws:iam::123456789012:role/S3Access
  • Un ruolo collegato al servizio:

    arn:aws:iam::123456789012:role/aws-service-role/access-analyzer.amazonaws.com/AWSServiceRoleForAccessAnalyzer
  • Un ruolo di servizio:

    arn:aws:iam::123456789012:role/service-role/QuickSightAction
  • Policy gestita:

    arn:aws:iam::123456789012:policy/ManageCredentialsPermissions
  • Un profilo di istanza che può essere associato a un'EC2istanza Amazon:

    arn:aws:iam::123456789012:instance-profile/Webserver
  • Un utente federato identificato IAM come «Paulo»:

    arn:aws:sts::123456789012:federated-user/Paulo
  • Sessione attiva di qualcuno che ha assunto il "Ruolo-contabilità" con il nome di sessione di ruolo di sessione "Mary":

    arn:aws:sts::123456789012:assumed-role/Accounting-Role/Mary
  • Rappresenta la sessione del chiamante quando viene utilizzata come risorsa in una API chiamata, ad esempio AWS STS SetContextAPI, che opera sulla sessione di chiamata:

    arn:aws:sts::123456789012:self
  • Dispositivo di autenticazione a più fattori assegnato all'utente denominato Jorge:

    arn:aws:iam::123456789012:mfa/Jorge
  • Certificato del server:

    arn:aws:iam::123456789012:server-certificate/ProdServerCert
  • Certificato server con un percorso che riflette un organigramma:

    arn:aws:iam::123456789012:server-certificate/division_abc/subdivision_xyz/ProdServerCert
  • Fornitori di identità (SAMLeOIDC):

    arn:aws:iam::123456789012:saml-provider/ADFSProvider arn:aws:iam::123456789012:oidc-provider/GoogleProvider arn:aws:iam::123456789012:oidc-provider/server.example.org
  • OIDCprovider di identità con un percorso che riflette un provider di EKS OIDC identità AmazonURL:

    arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-west-2.amazonaws.com/id/a1b2c3d4567890abcdefEXAMPLE11111

Un altro elemento importante ARN è l'utente rootARN. Sebbene questa non sia una IAM risorsa, dovresti conoscerne il formatoARN. Viene spesso utilizzato nell'elemento Principal di una policy basata su risorse.

  • Account AWS Visualizza quanto segue:

    arn:aws:iam::123456789012:root

L'esempio seguente mostra una policy che può essere assegnata a Richard per la gestione autonoma delle sue chiavi di accesso. Notate che la risorsa è l'IAMutente Richard.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ManageRichardAccessKeys", "Effect": "Allow", "Action": [ "iam:*AccessKey*", "iam:GetUser" ], "Resource": "arn:aws:iam::*:user/division_abc/subdivision_xyz/Richard" }, { "Sid": "ListForConsole", "Effect": "Allow", "Action": "iam:ListUsers", "Resource": "*" } ] }
Nota

Quando si utilizza ARNs per identificare le risorse in una IAM policy, è possibile includere variabili di policy. Le variabili di policy possono includere segnaposto per le informazioni di runtime (come il nome dell'utente) come parte di. ARN Per ulteriori informazioni, consulta Elementi delle policy IAM: variabili e tag

Utilizzo di caratteri jolly e percorsi in ARNs

È possibile utilizzare i caratteri jolly in resource parte di ARN per specificare più utenti, IAM gruppi o politiche. Ad esempio, per specificare tutti gli utenti che lavorano su un prodotto denominato product_1234, puoi utilizzare:

arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/product_1234/*

Se hai utenti i cui nomi iniziano con la stringaapp_, puoi fare riferimento a tutti con quanto segueARN.

arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/product_1234/app_*

Per specificare tutti gli utenti, i IAM gruppi o le politiche del tuo account Account AWS, utilizza un carattere jolly dopo user/group/, o policy/ parte diARN, rispettivamente.

arn:aws:iam::123456789012:user/* arn:aws:iam::123456789012:group/* arn:aws:iam::123456789012:policy/*

Se specificate quanto segue ARN per un utentearn:aws:iam::111122223333:user/*, esso corrisponde a entrambi gli esempi seguenti.

arn:aws:iam::111122223333:user/JohnDoe arn:aws:iam::111122223333:user/division_abc/subdivision_xyz/JaneDoe

Tuttavia, se si specifica quanto segue ARN per un utentearn:aws:iam::111122223333:user/division_abc*, corrisponde al secondo esempio, ma non al primo.

arn:aws:iam::111122223333:user/JohnDoe arn:aws:iam::111122223333:user/division_abc/subdivision_xyz/JaneDoe

Non utilizzate caratteri jolly in user/group/, o in policy/ parte diARN. Ad esempio, IAM non consente quanto segue:

arn:aws:iam::123456789012:u*
Esempio di utilizzo dei percorsi e ARNs per un gruppo di utenti basato su un progetto

I percorsi non possono essere creati o modificati nella AWS Management Console. Per utilizzare i percorsi è necessario utilizzare la risorsa utilizzando il AWS API AWS CLI, o gli Strumenti per Windows PowerShell.

In questo esempio, Jules nel gruppo di utenti Marketing_Admin crea un gruppo basato su progetto all'interno del percorso /marketing/. Jules assegna gli utenti provenienti da diverse parti dell'azienda al gruppo di utenti. Questo esempio illustra come il percorso di un utente non sia correlato ai gruppi di utenti in cui si trova l'utente.

Il gruppo marketing sta per lanciare un nuovo prodotto, quindi Jules crea un nuovo gruppo nel percorso /marketing/, chiamandolo Widget_Launch. Jules assegna al gruppo la seguente policy, che fornisce l'accesso al gruppo di utenti a oggetti nella parte del example_bucket progettato appositamente per il lancio del prodotto.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": "arn:aws:s3:::example_bucket/marketing/newproductlaunch/widget/*" }, { "Effect": "Allow", "Action": "s3:ListBucket*", "Resource": "arn:aws:s3:::example_bucket", "Condition": {"StringLike": {"s3:prefix": "marketing/newproductlaunch/widget/*"}} } ] }

Jules assegna quindi al gruppo di utenti gli utenti coinvolti nel lancio del prodotto. Fra questi ci sono Patricia ed Eli dal percorso /marketing/. Sono inclusi anche Chris e Chloe dal percorso /vendite/ e Aline e Jim dal percorso /legale/.

Identificatori univoci

Quando IAM crea un utente, un gruppo di utenti, un ruolo, un criterio, un profilo di istanza o un certificato del server, assegna un ID univoco a ciascuna risorsa. L'ID univoco ha il seguente aspetto:

AIDAJQABLZS4A3QDU576Q

Nella maggior parte dei casi, si utilizzano nomi descrittivi e ARNsquando si lavora con IAM le risorse. In questo modo non è necessario conoscere l'ID univoco per una risorsa specifica. Tuttavia, a volte l'ID univoco può risultare utile, se l'utilizzo di nomi descrittivi non risulta pratico.

Un esempio riutilizza nomi descrittivi nel tuo Account AWS. All'interno dell'account, il nome descrittivo di un utente, di un gruppo di utenti, di un ruolo o di una policy deve essere univoco. Ad esempio, potresti creare un IAM utente denominatoJohn. La tua azienda utilizza Amazon S3 e dispone di un bucket con cartelle per ogni dipendente. IAMuser John è un membro di un IAM gruppo di utenti denominato User-S3-Access con autorizzazioni che consentono agli utenti di accedere solo alle proprie cartelle nel bucket. Per un esempio di come potresti creare una policy basata sull'identità che consenta IAM agli utenti di accedere al proprio oggetto bucket in S3 utilizzando il nome descrittivo degli utenti, vedi. Amazon S3: consente IAM agli utenti di accedere alla propria home directory S3, a livello di codice e nella console

Supponiamo che il dipendente di nome John lasci la vostra azienda e che voi cancelliate il nome utente corrispondente. IAM John Ma più tardi inizia un altro dipendente di nome John e tu crei un nuovo IAM utente denominatoJohn. Il nuovo IAM utente denominato viene aggiunto John al gruppo di IAM utenti esistenteUser-S3-Access. Se la politica associata al gruppo di utenti specifica il nome IAM utente John descrittivo, la politica consente al nuovo John di accedere alle informazioni lasciate dal precedente John.

In generale, ti consigliamo di specificare il nome della ARN risorsa nelle tue politiche anziché il suo ID univoco. Tuttavia, ogni IAM utente ha un ID univoco, anche se crei un nuovo IAM utente che riutilizza un nome descrittivo eliminato in precedenza. Nell'esempio, il vecchio IAM utente John e il nuovo IAM utente John hanno caratteristiche uniche IDs diverse. È possibile creare policy basate sulle risorse che concedono l'accesso in base all'ID univoco e non solo per nome utente. In questo modo si riduce la possibilità che si possa inavvertitamente concedere l'accesso alle informazioni che un dipendente non dovrebbe avere.

L'esempio seguente mostra come specificare unique IDs nell'Principalelemento di una policy basata sulle risorse.

"Principal": { "AWS": [ "arn:aws:iam::111122223333:role/role-name", "AIDACKCEVSQ6C2EXAMPLE", "AROADBQP57FF2AEXAMPLE" }

L'esempio seguente mostra come è possibile specificare un elemento univoco IDs nell'Conditionelemento di una politica utilizzando una chiave di condizione globale. aws:userid

"Condition": { "StringLike": { "aws:userId": [ "AIDACKCEVSQ6C2EXAMPLE", "AROADBQP57FF2AEXAMPLE:role-session-name", "AROA1234567890EXAMPLE:*", "111122223333" ] } }

Un altro esempio in cui l'utente IDs può essere utile è se si gestisce il proprio database (o altro archivio) di informazioni sugli IAM utenti o sul ruolo. L'ID univoco può fornire un identificatore univoco per ogni IAM utente o ruolo creato. Questo è il caso in cui IAM utenti o ruoli riutilizzano un nome, come nell'esempio precedente.

Approfondimento dei prefissi ID univoci

IAMutilizza i seguenti prefissi per indicare il tipo di risorsa a cui si applica ciascun ID univoco. I prefissi possono variare in base a quando sono stati creati.

Prefix Tipo di risorsa
ABIA AWS STS token service bearer
ACCA Credenziali specifiche per contesto

AGPA

Gruppo di utenti

AIDA

IAMutente

AIPA Profilo di EC2 istanza Amazon
AKIA Chiave di accesso
ANPA

Policy gestita

ANVA

Versione in una policy gestita

APKA Chiavi pubbliche
AROA Ruolo
ASCA Certificato

ASIA

Le chiavi di accesso temporanee (AWS STS) IDs utilizzano questo prefisso, ma sono uniche solo in combinazione con la chiave di accesso segreta e il token di sessione.

Ottenere l'identificatore univoco

L'ID univoco di una IAM risorsa non è disponibile nella IAM console. Per ottenere l'ID univoco, puoi utilizzare i seguenti AWS CLI comandi o IAM API chiamate.

AWS CLI:

IAM API: