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à.
Configura lo storage da utilizzare con AWS Transfer Family
Questo argomento descrive le opzioni di archiviazione che è possibile utilizzare AWS Transfer Family. Puoi usare Amazon S3 o Amazon EFS come storage per i tuoi server Transfer Family.
Configurazione di un bucket Amazon S3
AWS Transfer Family accede al tuo bucket Amazon S3 per soddisfare le richieste di trasferimento degli utenti, quindi devi fornire un bucket Amazon S3 come parte della configurazione del server abilitato al protocollo di trasferimento file. Puoi utilizzare un bucket esistente o crearne uno nuovo.
Nota
Non è necessario utilizzare un server e un bucket Amazon S3 che si trovano nella stessa AWS regione, ma consigliamo questa procedura come best practice.
Quando configuri i tuoi utenti, assegni a ciascuno di loro un ruolo. IAM Questo ruolo determina il livello di accesso che hanno al tuo bucket Amazon S3.
Per informazioni sulla creazione di un nuovo bucket, vedi Come si crea un bucket S3? nella Guida per l'utente di Amazon Simple Storage Service.
Nota
Puoi usare Amazon S3 Object Lock per impedire che gli oggetti vengano sovrascritti per un periodo di tempo fisso o indefinitamente. Funziona allo stesso modo con Transfer Family come con altri servizi. Se un oggetto esiste ed è protetto, non è consentito scriverlo o eliminarlo. Per ulteriori dettagli su Amazon S3 Object Lock, consulta Using Amazon S3 Object Lock nella Amazon Simple Storage Service User Guide.
Punti di accesso Amazon S3
AWS Transfer Family supporta Amazon S3 Access Points
Ad esempio, puoi utilizzare i punti di accesso per consentire a tre team diversi di accedere allo stesso set di dati condiviso in cui un team può leggere i dati da S3, un secondo team può scrivere dati su S3 e il terzo team può leggere, scrivere ed eliminare dati da S3. Per implementare un controllo granulare degli accessi come indicato sopra, puoi creare un punto di accesso S3 che contenga una policy che fornisca un accesso asimmetrico a diversi team. Puoi utilizzare gli access point S3 con il tuo server Transfer Family per ottenere un controllo granulare degli accessi, senza creare una complessa policy sui bucket S3 che copra centinaia di casi d'uso. Per ulteriori informazioni su come utilizzare gli access point S3 con un server Transfer Family, consulta il post di blog Enhance data access control with AWS Transfer Family and Amazon
Nota
AWS Transfer Family attualmente non supporta punti di accesso multiregionali Amazon S3.
Comportamento di Amazon S3 HeadObject
Nota
Quando crei o aggiorni un server Transfer Family, puoi ottimizzare le prestazioni per le tue directory Amazon S3, eliminando le chiamate. HeadObject
In Amazon S3 bucket e oggetti sono le risorse primarie e gli oggetti sono archiviati nei bucket. Amazon S3 può simulare un file system gerarchico, ma a volte può comportarsi in modo diverso rispetto a un file system tipico. Ad esempio, le directory non sono un concetto di prima classe in Amazon S3, ma si basano invece su chiavi oggetto. AWS Transfer Family deduce il percorso di una directory dividendo la chiave di un oggetto con il carattere barra (/), trattando l'ultimo elemento come nome del file, quindi raggruppando i nomi di file che hanno lo stesso prefisso nello stesso percorso. Gli oggetti a byte zero vengono creati per rappresentare il percorso di una cartella quando crei una directory vuota utilizzando mkdir
o utilizzando la console Amazon S3. La chiave per questi oggetti termina con una barra finale. Questi oggetti a zero byte sono descritti in Organizing objects in the Amazon S3 console using folders nella Amazon S3 User Guide.
Quando esegui un ls
comando e alcuni risultati sono oggetti Amazon S3 a zero byte (questi oggetti hanno chiavi che terminano con il carattere barra), Transfer Family invia una HeadObject
richiesta per ciascuno di questi oggetti (consulta Amazon Simple Storage Service Reference per HeadObjecti dettagli). API Ciò può causare i seguenti problemi quando si utilizza Amazon S3 come storage con Transfer Family.
Concedi la possibilità di scrivere ed elencare solo file
In alcuni casi, potresti voler offrire solo l'accesso in scrittura ai tuoi oggetti Amazon S3. Ad esempio, potresti voler fornire l'accesso per scrivere (o caricare) ed elencare oggetti in un bucket, ma non per leggere (scaricare) oggetti. Per eseguire mkdir
comandi utilizzando ls
i client di trasferimento file, devi disporre di Amazon S3 ListObjects
e PutObject
delle autorizzazioni. Tuttavia, quando Transfer Family deve effettuare una HeadObject
chiamata per scrivere o elencare file, la chiamata fallisce con un errore di Accesso negato, poiché questa chiamata richiede l'GetObject
autorizzazione.
Nota
Quando crei o aggiorni un server Transfer Family, puoi ottimizzare le prestazioni per le tue directory Amazon S3, eliminando le chiamate. HeadObject
In questo caso, puoi concedere l'accesso aggiungendo una condizione di policy AWS Identity and Access Management (IAM) che aggiunge l'GetObject
autorizzazione solo per gli oggetti che terminano con una barra (). /
Questa condizione impedisce GetObject
le chiamate ai file (in modo che non possano essere letti), ma consente all'utente di elencare e attraversare le cartelle. La seguente policy di esempio offre solo l'accesso in scrittura ed elenco ai bucket Amazon S3. Per utilizzare questa policy, sostituiscila
con il nome del tuo bucket.DOC-EXAMPLE-BUCKET
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowListing", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::
DOC-EXAMPLE-BUCKET
" }, { "Sid": "AllowReadWrite", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET
/*" ] }, { "Sid": "DenyIfNotFolder", "Effect": "Deny", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "NotResource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET
/*/" ] } ] }
Nota
Questa politica non consente agli utenti di aggiungere file. In altre parole, un utente a cui viene assegnata questa politica non può aprire file per aggiungervi contenuto o modificarli. Inoltre, se il tuo caso d'uso richiede una HeadObject
chiamata prima di caricare un file, questa politica non funzionerà per te.
Un gran numero di oggetti a zero byte che causano problemi di latenza
Se i bucket Amazon S3 contengono un gran numero di questi oggetti a zero byte, Transfer Family emette molte chiamate, il che può causare HeadObject
ritardi nell'elaborazione.
Una possibile soluzione a questo problema è eliminare tutti gli oggetti a zero byte. Tieni presente quanto segue:
-
Le cartelle vuote non esisteranno più. Le directory esistono solo perché i loro nomi sono nella chiave di un oggetto.
-
Non impedisce a qualcuno di chiamare
mkdir
e rompere nuovamente le cose. È possibile mitigare questo problema creando una politica che impedisca la creazione di directory. -
Alcuni scenari utilizzano questi oggetti da 0 byte. Ad esempio, hai una struttura come /inboxes/customer1000 e la directory della posta in arrivo viene pulita ogni giorno.
Un'altra soluzione possibile è limitare il numero di oggetti visibili attraverso una condizione politica per ridurre il numero di chiamate. HeadObject
Affinché questa sia una soluzione praticabile, devi accettare il fatto che potresti essere in grado di visualizzare solo un insieme limitato di tutte le tue sottodirectory.
Configurazione di un EFS file system Amazon
AWS Transfer Family accede ad Amazon Elastic File System (AmazonEFS) per soddisfare le richieste di trasferimento degli utenti. Pertanto, è necessario fornire un EFS file system Amazon come parte della configurazione del server abilitato al protocollo di trasferimento file. Puoi utilizzare un file system esistente o crearne uno nuovo.
Tieni presente quanto segue:
-
Quando utilizzi un server Transfer Family e un EFS file system Amazon, il server e il file system devono essere nello stesso posto Regione AWS.
-
Il server e il file system non devono necessariamente avere lo stesso account. Se il server e il file system non si trovano nello stesso account, la politica del file system deve fornire un'autorizzazione esplicita al ruolo utente.
Per informazioni su come configurare più account, consulta Gestione degli AWS account nell'organizzazione nella Guida per l'AWS Organizations utente.
-
Quando configuri i tuoi utenti, assegni a ciascuno di loro un IAM ruolo. Questo ruolo determina il livello di accesso che hanno al tuo EFS file system Amazon.
-
Per i dettagli sul montaggio di un EFS file system Amazon, consulta Mounting Amazon EFS file system.
Per maggiori dettagli sulla EFS collaborazione AWS Transfer Family con Amazon, consulta Using AWS Transfer Family to access files in your Amazon EFS file system nella Amazon Elastic File System User Guide.
Proprietà EFS dei file Amazon
Amazon EFS utilizza il modello di autorizzazione dei file Portable Operating System Interface (POSIX) per rappresentare la proprietà dei file.
InPOSIX, gli utenti del sistema sono classificati in tre classi di autorizzazione distinte: quando consenti a un utente di accedere ai file archiviati in un EFS file system Amazon utilizzando AWS Transfer Family, devi assegnargli un «POSIXprofilo». Questo profilo viene utilizzato per determinare il loro accesso a file e directory nel EFS file system Amazon.
-
Utente (u): proprietario del file o della directory. Di solito, il creatore di un file o di una directory ne è anche il proprietario.
-
Gruppo (g): insieme di utenti che necessitano di un accesso identico ai file e alle directory che condividono.
-
Altri (o): tutti gli altri utenti che hanno accesso al sistema ad eccezione del proprietario e dei membri del gruppo. Questa classe di autorizzazione viene anche chiamata «Pubblica».
Nel modello di POSIX autorizzazione, ogni oggetto del file system (file, directory, link simbolici, named pipe e socket) è associato ai tre set di permessi menzionati in precedenza. EFSAgli oggetti Amazon è associata una modalità in stile Unix. Questo valore di modalità definisce le autorizzazioni per l'esecuzione di azioni su quell'oggetto.
Inoltre, nei sistemi in stile Unix, gli utenti e i gruppi sono mappati su identificatori numerici, che EFS Amazon utilizza per rappresentare la proprietà dei file. Per AmazonEFS, gli oggetti sono di proprietà di un unico proprietario e di un singolo gruppo. Amazon EFS utilizza il numero mappato IDs per verificare le autorizzazioni quando un utente tenta di accedere a un oggetto del file system.
Configurare EFS gli utenti Amazon per Transfer Family
Prima di configurare EFS gli utenti Amazon, puoi eseguire una delle seguenti operazioni:
-
Puoi creare utenti e configurare le loro cartelle home in AmazonEFS. Per informazioni dettagliate, vedi Configurazione degli utenti Transfer Family su Amazon EFS.
-
Se ti senti a tuo agio nell'aggiungere un utente root, puoi farloCrea un utente EFS root Amazon.
Nota
I server Transfer Family non supportano i punti di EFS accesso Amazon per impostare POSIX le autorizzazioni. POSIXI profili degli utenti di Transfer Family (descritti nella sezione precedente) offrono la possibilità di impostare POSIX le autorizzazioni. Queste autorizzazioni sono impostate a livello di utente, per un accesso granulare, basato su UID e secondario. GID GIDs
Configurazione degli utenti Transfer Family su Amazon EFS
Transfer Family mappa gli utenti su UID/GID and directories you specify. If the UID/GID/directories non esistono già inEFS, quindi è necessario crearli prima di assegnarli in Transfer a un utente. I dettagli per la creazione di EFS utenti Amazon sono descritti in Lavorare con utenti, gruppi e autorizzazioni a livello di Network File System (NFS) nella Amazon Elastic File System User Guide.
Passaggi per configurare EFS gli utenti Amazon in Transfer Family
-
Mappa la sabbia EFS UID GID per il tuo utente in Transfer Family utilizzando i
PosixProfile
campi. -
Se desideri che l'utente inizi in una cartella specifica al momento dell'accesso, puoi specificare la EFS directory sotto il
HomeDirectory
campo.
È possibile automatizzare il processo utilizzando una CloudWatch regola e una funzione Lambda. Per un esempio di funzione Lambda con cui interagisceEFS, consulta Using Amazon EFS for AWS Lambda nelle tue
Inoltre, puoi configurare le directory logiche per gli utenti di Transfer Family. Per i dettagli, consulta la Configura le directory logiche per Amazon EFS sezione dell'Utilizzo di directory logiche per semplificare le strutture di directory Transfer Familyargomento.
Crea un utente EFS root Amazon
Se la tua organizzazione ritiene opportuno abilitare l'accesso come utente root tramiteSFTP/FTPSper la configurazione degli utenti, puoi creare un utente che sia UID 0 (utente root), quindi utilizzare quell'utente root per creare cartelle e assegnare i proprietari degli POSIX ID agli altri utenti. GID Il vantaggio di questa opzione è che non è necessario montare il EFS file system Amazon.
Esegui i passaggi descritti in eAggiungere utenti gestiti EFS dai servizi Amazon, sia per l'ID utente che per l'ID del gruppo, inserisci 0 (zero).
EFSComandi Amazon supportati
I seguenti comandi sono supportati per Amazon EFS for AWS Transfer Family.
-
cd
-
ls
/dir
-
pwd
-
put
-
get
-
rename
-
chown
: Solo i root (ovvero gli utenti con uid=0) possono modificare la proprietà e le autorizzazioni di file e directory. -
chmod
: Solo root può modificare la proprietà e le autorizzazioni di file e directory. -
chgrp
: Supportato sia per root che per il proprietario del file, che può solo modificare il gruppo di file in uno dei propri gruppi secondari. -
ln -s
/symlink
-
mkdir
-
rm
/delete
-
rmdir
-
chmtime