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à.
Crea un ruolo e una policy IAM
Questo argomento descrive i tipi di politiche e ruoli che è possibile utilizzare e illustra il processo di creazione di un ruolo utente. AWS Transfer Family Descrive inoltre come funzionano i criteri di sessione e fornisce un esempio di ruolo utente.
AWS Transfer Family utilizza i seguenti tipi di ruoli:
-
Ruolo utente: consente agli utenti gestiti dal servizio di accedere alle risorse Transfer Family necessarie. AWS Transfer Family assume questo ruolo nel contesto dell'ARN di un utente Transfer Family.
-
Ruolo di accesso: fornisce l'accesso solo ai file Amazon S3 che vengono trasferiti. Per i trasferimenti AS2 in entrata, il ruolo di accesso utilizza l'Amazon Resource Name (ARN) per l'accordo. Per i trasferimenti AS2 in uscita, il ruolo di accesso utilizza l'ARN per il connettore.
-
Ruolo di chiamata: da utilizzare con Amazon API Gateway come provider di identità personalizzato del server. Transfer Family assume questo ruolo nel contesto di un ARN del server Transfer Family.
-
Ruolo di registrazione: utilizzato per registrare le voci in Amazon CloudWatch. Transfer Family utilizza questo ruolo per registrare i dettagli relativi al successo e all'errore insieme alle informazioni sui trasferimenti di file. Transfer Family assume questo ruolo nel contesto di un ARN del server Transfer Family. Per i trasferimenti AS2 in uscita, il ruolo di registrazione utilizza il connettore ARN.
-
Ruolo di esecuzione: consente a un utente Transfer Family di chiamare e avviare flussi di lavoro. Transfer Family assume questo ruolo nel contesto di un flusso di lavoro Transfer Family ARN.
Oltre a questi ruoli, puoi anche utilizzare i criteri di sessione. Una politica di sessione viene utilizzata per limitare l'accesso quando necessario. Tieni presente che queste politiche sono autonome: ovvero non le aggiungi a un ruolo. Piuttosto, aggiungi una politica di sessione direttamente a un utente Transfer Family.
Nota
Quando crei un utente Transfer Family gestito dal servizio, puoi selezionare la politica di generazione automatica in base alla cartella home. Questa è una scorciatoia utile se desideri limitare l'accesso degli utenti alle proprie cartelle. Inoltre, è possibile visualizzare dettagli sulle politiche di sessione e un esempio inCome funzionano le politiche di sessione. Puoi anche trovare ulteriori informazioni sulle policy di sessione in Session policies nella IAM User Guide.
Argomenti
Creazione di un ruolo utente
Quando crei un utente, prendi una serie di decisioni sull'accesso degli utenti. Queste decisioni includono a quali bucket Amazon S3 o file system Amazon EFS l'utente può accedere, a quali parti di ogni bucket Amazon S3 e quali file nel file system sono accessibili e quali autorizzazioni dispone l'utente (ad esempio, o). PUT
GET
Per impostare l'accesso, crei una politica e un ruolo basati sull'identità AWS Identity and Access Management (IAM) che forniscono tali informazioni di accesso. Come parte di questo processo, fornisci l'accesso al tuo utente al bucket Amazon S3 o al file system Amazon EFS che è la destinazione o l'origine per le operazioni sui file. A questo scopo, esegui la seguente procedura dettagliata, descritta di seguito:
Creazione di un ruolo utente
-
Crea una policy IAM per. AWS Transfer Family Ciò è descritto inPer creare una policy IAM per AWS Transfer Family.
-
Crea un ruolo IAM e allega la nuova policy IAM. Per vedere un esempio, consulta Esempio di politica di accesso in lettura/scrittura.
-
Stabilisci una relazione di fiducia tra AWS Transfer Family e il ruolo IAM. Questo è descritto inPer stabilire una relazione di trust.
Le seguenti procedure descrivono come creare una policy e un ruolo IAM.
Per creare una policy IAM per AWS Transfer Family
-
Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel riquadro di navigazione, seleziona Policy e quindi Crea policy.
-
Nella pagina Create Policy (Crea policy), selezionare la scheda JSON.
-
Nell'editor visualizzato, sostituisci il contenuto dell'editor con la policy IAM che desideri allegare al ruolo IAM.
Puoi concedere l'accesso in lettura/scrittura o limitare gli utenti alla loro home directory. Per ulteriori informazioni, consulta Esempio di politica di accesso in lettura/scrittura.
-
Scegli Rivedi politica e fornisci un nome e una descrizione per la tua politica, quindi scegli Crea politica.
Quindi, crea un ruolo IAM e collegalo alla nuova policy IAM.
Per creare un ruolo IAM per AWS Transfer Family
-
Nel riquadro di navigazione, scegli Ruoli e quindi Crea ruolo.
Nella pagina Crea ruolo, assicurati che il AWS servizio sia selezionato.
-
Scegliere Transfer (Trasferisci) dall'elenco di servizi, quindi selezionare Next: Permissions (Successivo: Autorizzazioni). Ciò stabilisce una relazione di fiducia tra AWS Transfer Family e AWS.
-
Nella sezione Allega criteri di autorizzazione, individua e scegli la politica che hai appena creato e scegli Avanti: Tag.
-
(Facoltativo) Immettere una chiave e un valore per un tag e scegliere Next: Review (Successivo: Rivedi).
-
Nella pagina Review (Rivedi), immettere un nome e una descrizione per il nuovo ruolo, quindi scegliere Create role (Crea ruolo).
Successivamente, stabilisci una relazione di fiducia tra AWS Transfer Family e AWS.
Per stabilire una relazione di trust
Nota
Nei nostri esempi, utilizziamo entrambi ArnLike
eArnEquals
. Sono identici dal punto di vista funzionale e pertanto è possibile utilizzarli entrambi quando si creano le proprie politiche. La documentazione di Transfer Family utilizza ArnLike
quando la condizione contiene un carattere jolly e ArnEquals
indica una condizione di corrispondenza esatta.
-
Nella console IAM, scegliere il ruolo appena creato.
-
Nella pagina Riepilogo, scegliere Relazioni di trust e selezionare Edit trust relationship (Modifica relazione di trust).
-
Nell'editor Edit Trust Relationship, assicurati che il servizio sia
"transfer.amazonaws.com"
attivo. La politica di accesso è mostrata di seguito.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "transfer.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Si consiglia di utilizzare le chiavi di condizione
aws:SourceAccount
eaws:SourceArn
per proteggersi dal problema del "confused deputy". L'account di origine è il proprietario del server e l'ARN di origine è l'ARN dell'utente. Per esempio:"Condition": { "StringEquals": { "aws:SourceAccount": "
account_id
" }, "ArnLike": { "aws:SourceArn": "arn:aws:transfer:region
:account_id
:user/*" } }Puoi utilizzare la
ArnLike
condizione anche se desideri limitarti a un determinato server anziché a qualsiasi server dell'account utente. Per esempio:"Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:transfer:
region
:account-id
:user/server-id
/*" } }Nota
Negli esempi precedenti, sostituisci ogni
segnaposto di input dell'utente
con le tue informazioni.Per i dettagli sul problema del vicesceriffo confuso e altri esempi, si veda. Prevenzione del problema "confused deputy" tra servizi
-
Scegli Aggiorna politica di fiducia per aggiornare la politica di accesso.
Ora hai creato un ruolo IAM che consente di AWS Transfer Family chiamare AWS i servizi per tuo conto. Hai associato al ruolo la policy IAM che hai creato per consentire l'accesso al tuo utente. Nella Guida introduttiva agli endpoint del server AWS Transfer Family sezione, questo ruolo e questa policy vengono assegnati al tuo utente o ai tuoi utenti.
Consulta anche
-
Per informazioni più generali sui ruoli IAM, consulta Creating a role to delegate permissions to an AWS service nella IAM User Guide.
-
Per ulteriori informazioni sulle politiche basate sull'identità per le risorse Amazon S3, consulta Gestione delle identità e degli accessi in Amazon S3 nella Guida per l'utente di Amazon Simple Storage Service.
-
Per ulteriori informazioni sulle politiche basate sull'identità per le risorse Amazon EFS, consulta Using IAM to control data access nel file system nella Amazon Elastic File System User Guide.
Come funzionano le politiche di sessione
Quando un amministratore crea un ruolo, il ruolo spesso include ampie autorizzazioni per coprire più casi d'uso o membri del team. Se un amministratore configura l'URL di una console, può ridurre le autorizzazioni per la sessione risultante utilizzando una politica di sessione. Ad esempio, se crei un ruolo con accesso in lettura/scrittura, puoi configurare un URL che limiti l'accesso degli utenti solo alle loro home directory.
I criteri di sessione sono criteri avanzati che vengono trasmessi come parametro quando si crea a livello di codice una sessione temporanea per un ruolo o un utente. Le policy di sessione sono utili per bloccare gli utenti in modo che abbiano accesso solo alle parti del bucket in cui i prefissi degli oggetti contengono il loro nome utente. Il diagramma seguente mostra che le autorizzazioni dei criteri di sessione sono l'intersezione tra i criteri di sessione e i criteri basati sulle risorse più l'intersezione dei criteri di sessione e i criteri basati sull'identità.
Per maggiori dettagli, consulta le politiche di sessione nella Guida per l'utente IAM.
Nel AWS Transfer Family, una policy di sessione è supportata solo durante il trasferimento da o verso Amazon S3. La seguente politica di esempio è una politica di sessione che limita l'accesso degli utenti solo alle loro home
directory. Tieni presente quanto segue:
-
Le
PutObjectACL
istruzioniGetObjectACL
e sono necessarie solo se è necessario abilitare Cross Account Access. Cioè, il tuo server Transfer Family deve accedere a un bucket in un altro account. -
La lunghezza massima di una politica di sessione è di 2048 caratteri. Per maggiori dettagli, consulta il parametro Policy request per l'
CreateUser
azione nel riferimento API. -
Se il tuo bucket Amazon S3 è crittografato utilizzando AWS Key Management Service (AWS KMS), devi specificare autorizzazioni aggiuntive nella tua policy. Per informazioni dettagliate, vedi Crittografia dei dati in Amazon S3.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::${transfer:HomeBucket}" ], "Condition": { "StringLike": { "s3:prefix": [ "${transfer:HomeFolder}/*", "${transfer:HomeFolder}" ] } } }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::${transfer:HomeDirectory}/*" } ] }
Nota
L'esempio di policy precedente presuppone che le directory home degli utenti siano impostate in modo da includere una barra finale, a indicare che si tratta di una directory. Se, al contrario, imposti quella di un utente HomeDirectory
senza la barra finale, dovresti includerla come parte della tua politica.
Nella policy di esempio precedente, prendete nota dell'uso dei parametri transfer:HomeFolder
transfer:HomeBucket
, e transfer:HomeDirectory
policy. Questi parametri sono impostati per HomeDirectory
i parametri configurati per l'utente, come descritto in HomeDirectoryandImplementazione del metodo API Gateway. Questi parametri hanno le seguenti definizioni:
Il
transfer:HomeBucket
parametro viene sostituito con il primo componente diHomeDirectory
.Il
transfer:HomeFolder
parametro viene sostituito con le parti rimanenti delHomeDirectory
parametro.Al
transfer:HomeDirectory
parametro è stata rimossa la barra anteriore (/
) iniziale in modo che possa essere utilizzata come parte di un Amazon Resource Name (ARN) di S3 in un'istruzione.Resource
Nota
Se utilizzi directory logiche, ovvero quelle dell'utente, LOGICAL
questi parametri di policy (HomeBucket
, e) homeDirectoryType
non sono supportati. HomeDirectory
HomeFolder
Ad esempio, supponiamo che il HomeDirectory
parametro configurato per l'utente Transfer Family sia/home/bob/amazon/stuff/
.
transfer:HomeBucket
è impostato su/home
.transfer:HomeFolder
è impostato su/bob/amazon/stuff/
.transfer:HomeDirectory
diventahome/bob/amazon/stuff/
.
Il primo "Sid"
consente all'utente di elencare tutte le directory a partire da/home/bob/amazon/stuff/
.
Il secondo "Sid"
limita l'get
accesso dell'utente put
e quello dello stesso percorso,. /home/bob/amazon/stuff/
Esempio di politica di accesso in lettura/scrittura
Concedi l'accesso in lettura/scrittura al bucket Amazon S3
La seguente politica di esempio AWS Transfer Family concede l'accesso in lettura/scrittura agli oggetti nel tuo bucket Amazon S3.
Tieni presente quanto segue:
-
Sostituisci
DOC-EXAMPLE-BUCKET
con il nome del bucket Amazon S3. -
Le
PutObjectACL
istruzioniGetObjectACL
e sono obbligatorie solo se devi abilitare Cross Account Access. Cioè, il tuo server Transfer Family deve accedere a un bucket in un altro account. -
DeleteObjectVersion
Le istruzioniGetObjectVersion
and sono necessarie solo se il controllo delle versioni è abilitato sul bucket Amazon S3 a cui si accede.Nota
Se hai già abilitato il controllo delle versioni per il tuo bucket, allora hai bisogno di queste autorizzazioni, poiché puoi solo sospendere il controllo delle versioni in Amazon S3 e non disattivarlo completamente. Per maggiori dettagli, consulta Unversioned, versioning-enabled e versioning-suspended bucket.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" } ] }
Concedi l'accesso al file system ai file nel file system Amazon EFS
Nota
Oltre alla policy, devi anche assicurarti che le autorizzazioni dei tuoi file POSIX garantiscano l'accesso appropriato. Per ulteriori informazioni, consulta Working with users, groups, and permissions at the Network File System (NFS) Level (Utilizzo di utenti, gruppi e autorizzazioni a livello NFS (Network File System) nella Guida per l'utente di Amazon Elastic File System.
La seguente policy di esempio concede l'accesso al file system root ai file del tuo file system Amazon EFS.
Nota
Negli esempi seguenti, sostituisci la regione
con la tua regione, l'ID account
con l'account in cui si trova il file e file-system-id
con l'ID del tuo Amazon Elastic File System (Amazon EFS).
{ "Version": "2012-10-17", "Statement": [ { "Sid": "RootFileSystemAccess", "Effect": "Allow", "Action": [ "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite" ], "Resource": "arn:aws:elasticfilesystem:
region
:account-id
:file-system/file-system-id
" } ] }
La seguente policy di esempio concede all'utente l'accesso ai file system del file system Amazon EFS.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "UserFileSystemAccess", "Effect": "Allow", "Action": [ "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite" ], "Resource": "arn:aws:elasticfilesystem:
region
:account-id
:file-system/file-system-id
" } ] }