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à.
Esempio 1: il proprietario del bucket concede agli utenti le autorizzazioni per il bucket
Importante
La concessione delle autorizzazioni ai IAM ruoli è una pratica migliore rispetto alla concessione delle autorizzazioni a singoli utenti. Per ulteriori informazioni su come concedere le autorizzazioni ai ruoli, consulta. IAM Comprensione delle autorizzazioni tra account e utilizzo dei ruoli IAM
Argomenti
In questa procedura dettagliata, un utente Account AWS possiede un bucket e l'account include un utente. Per impostazione predefinita, l'utente non dispone di autorizzazioni. IAM Per eseguire qualsiasi attività, l'account padre deve concedere le autorizzazioni all'utente. Il proprietario del bucket e l'account padre sono uguali. Pertanto, per concedere all'utente le autorizzazioni sul bucket, Account AWS possono utilizzare una policy del bucket, una politica utente o entrambe. Il proprietario dell'account concederà alcune autorizzazioni con una policy del bucket e altre con una policy utente.
La seguenti fasi riepilogano la procedura guidata:
-
L'amministratore dell'account crea una policy bucket per concedere un set di autorizzazioni all'utente.
-
L'amministratore dell'account collega una policy utente all'utente per concedere ulteriori autorizzazioni.
-
L'utente prova quindi le autorizzazioni concesse tramite la policy bucket e la policy utente.
Per questo esempio, avrai bisogno di un. Account AWS Anziché utilizzare le credenziali dell'utente root dell'account, sarà necessario creare un utente amministratore (consultare Informazioni sull'uso di un utente amministratore per creare risorse e concedere autorizzazioni). Ci riferiamo all'utente Account AWS e all'utente amministratore come illustrato nella tabella seguente.
ID account | Account denominato | Utente amministratore nell'account |
---|---|---|
|
Account A |
AccountAadmin |
Nota
L'utente amministratore in questo esempio è AccountAadmin, che si riferisce all'account A e non AccountAdmin.
Tutte le attività di creazione degli utenti e assegnazione delle autorizzazioni vengono effettuate nella AWS Management Console. Per verificare le autorizzazioni, la procedura dettagliata utilizza gli strumenti della riga di comando, AWS Command Line Interface (AWS CLI) e AWS Tools for Windows PowerShell quindi non è necessario scrivere alcun codice.
Preparazione della spiegazione passo per passo
-
Assicurati di avere un account Account AWS e che abbia un utente con privilegi di amministratore.
-
Iscriviti a un Account AWS, se necessario. Si fa riferimento a questo account come Account A.
-
Vai su https://aws.amazon.com/s3
e scegli Crea un AWS account. -
Seguire le istruzioni su schermo.
AWS ti avviserà via e-mail quando il tuo account sarà attivo e disponibile per l'uso.
-
-
Nell'Account A, crea un utente amministratore
AccountAadmin
. Utilizzando le credenziali dell'Account A, accedi alla IAMconsoleed esegui le seguenti operazioni: -
Crea utente
AccountAadmin
e annota le credenziali di sicurezza dell'utente.Per istruzioni, consulta la sezione Creazione di un IAM utente Account AWS nella Guida per l'IAMutente.
-
Concedi i privilegi di amministratore AccountAadminallegando una politica utente che dia accesso completo.
Per istruzioni, consulta Gestione delle IAM politiche nella Guida per l'IAMutente.
-
Nota il codice di accesso IAM utente URL per AccountAadmin. Dovrai utilizzarlo URL quando accedi a. AWS Management Console Per ulteriori informazioni su dove trovare l'accessoURL, consulta Accedere AWS Management Console come IAM utente nella Guida per l'IAMutente. Nota il URL codice per ogni account.
-
-
-
Configura il AWS CLI o il AWS Tools for Windows PowerShell. Assicurati di salvare le credenziali dell'utente amministratore come segue:
-
Se usi il AWS CLI, crea un profilo nel file di configurazione.
AccountAadmin
-
Se utilizzi il AWS Tools for Windows PowerShell, assicurati di memorizzare le credenziali per la sessione come.
AccountAadmin
Per istruzioni, consulta Configurazione degli strumenti per le procedure dettagliate.
-
Passaggio 1: Creare risorse nell'Account A e concedere le autorizzazioni
Utilizzando le credenziali dell'utente AccountAadmin
nell'Account A e l'accesso speciale IAM dell'utenteURL, accedi a AWS Management Console e procedi come segue:
-
Crea le risorse di un bucket e di un utente IAM
-
Nella console di Amazon S3 creare un bucket. Nota Regione AWS in che modo hai creato il bucket. Per istruzioni, consulta Creazione di un bucket.
-
Nella IAMconsole
, procedi come segue: -
Crea un utente chiamato Dave.
Per step-by-step istruzioni, consulta Creazione di IAM utenti (console) nella Guida per l'IAMutente.
-
Annota le
UserDave
credenziali. -
Nota l'Amazon Resource Name (ARN) per l'utente Dave. Nella IAMConsole
, seleziona l'utente e la scheda Riepilogo lo fornisce. ARN
-
-
-
Concedi le autorizzazioni.
Poiché il proprietario del bucket e l'account principale a cui appartiene l'utente sono gli stessi, Account AWS possono concedere le autorizzazioni all'utente utilizzando una policy del bucket, una politica utente o entrambe. come in questo esempio. Se l'oggetto è anche di proprietà dello stesso account, il proprietario del bucket può concedere le autorizzazioni all'oggetto nella policy del bucket (o in una politica). IAM
-
Nella console Amazon S3, collega la seguente policy sui bucket a
awsexamplebucket1
.La policy include due dichiarazioni.
-
La prima istruzione concede a Dave le autorizzazioni per le operazioni sul bucket
s3:GetBucketLocation
es3:ListBucket
. -
La seconda istruzione concede l'autorizzazione
s3:GetObject
. Poiché l'Account A è anche proprietario dell'oggetto, l'amministratore dell'account può concedere l'autorizzaziones3:GetObject
.
Nella
Principal
dichiarazione, Dave viene identificato dal suo utente. ARN Per ulteriori informazioni sugli elementi delle policy, consultare Politiche e autorizzazioni in Amazon S3.{ "Version": "2012-10-17", "Statement": [ { "Sid": "statement1", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
AccountA-ID
:user/Dave" }, "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::awsexamplebucket1
" ] }, { "Sid": "statement2", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::AccountA-ID
:user/Dave" }, "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::awsexamplebucket1
/*" ] } ] } -
-
Creare una policy inline per l'utente Dave mediante la policy che segue. La policy concede a Dave l'autorizzazione
s3:PutObject
. È necessario aggiornare la policy specificando il nome del bucket.{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermissionForObjectOperations", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
awsexamplebucket1
/*" ] } ] }Per istruzioni, consulta Managing IAMpolicies in the IAMUser Guide. Tenere presente che è necessario accedere alla console tramite le credenziali dell'Account A.
-
Fase 2: testare le autorizzazioni
Utilizzando le credenziali di Dave, verificare che le autorizzazioni funzionino correttamente. È possibile utilizzare una delle due procedure di seguito.
Verifica le autorizzazioni utilizzando il AWS CLI
-
Aggiorna il file di AWS CLI configurazione aggiungendo il seguente
UserDaveAccountA
profilo. Per ulteriori informazioni, consulta Configurazione degli strumenti per le procedure dettagliate.[profile UserDaveAccountA] aws_access_key_id =
access-key
aws_secret_access_key =secret-access-key
region =us-east-1
-
Verificare che Dave possa eseguire le operazioni autorizzate nella policy utente. Caricate un oggetto di esempio utilizzando il AWS CLI
put-object
comando seguente.Il parametro
--body
nel comando identifica il file di origine da caricare. Ad esempio, se il file si trova nella radice dell'unità C: su un Windows macchina, si specificac:\HappyFace.jpg
. Il parametro--key
fornisce il nome della chiave dell'oggetto.aws s3api put-object --bucket
awsexamplebucket1
--keyHappyFace.jpg
--bodyHappyFace.jpg
--profile UserDaveAccountAEsegui il seguente AWS CLI comando per ottenere l'oggetto.
aws s3api get-object --bucket awsexamplebucket1 --key
HappyFace.jpg
OutputFile.jpg
--profile UserDaveAccountA
Verifica le autorizzazioni utilizzando il AWS Tools for Windows PowerShell
-
Memorizza le credenziali di Dave come.
AccountADave
Queste credenziali vengono quindi utilizzate perPUT
aggiungere un oggetto.GET
set-awscredentials -AccessKey
AccessKeyID
-SecretKeySecretAccessKey
-storeas AccountADave -
Caricate un oggetto di esempio utilizzando il AWS Tools for Windows PowerShell
Write-S3Object
comando utilizzando le credenziali memorizzate dell'utente Dave.Write-S3Object -bucketname
awsexamplebucket1
-keyHappyFace.jpg
-fileHappyFace.jpg
-StoredCredentials AccountADaveScaricare l'oggetto caricato in precedenza.
Read-S3Object -bucketname
awsexamplebucket1
-keyHappyFace.jpg
-fileOutput.jpg
-StoredCredentials AccountADave