AWS PrivateLink per Amazon S3
Con AWS PrivateLink per Amazon S3, puoi eseguire il provisioning di endpoint VPC di interfaccia (endpoint di interfaccia) nel tuo virtual private cloud (VPC). Puoi accedere a questi endpoint direttamente da applicazioni On-Premise su VPN e AWS Direct Connect, o in un'altra Regione AWS su peering di VPC.
Gli endpoint di interfaccia sono rappresentati da una o più interfacce di rete elastiche (ENI) a cui vengono assegnati indirizzi IP privati dalle sottoreti nel VPC. Le richieste che vengono effettuate agli endpoint di interfaccia per Amazon S3 vengono instradate automaticamente ad Amazon S3 sulla rete Amazon. È inoltre possibile accedere agli endpoint di interfaccia nel VPC da applicazioni locali tramite AWS Direct Connect o AWS Virtual Private Network (AWS VPN). Per ulteriori informazioni su come connettere il VPC alla rete On-Premise, consulta la Guida per l'utente di AWS Direct Connect e la Guida per l'utente di AWS Site-to-Site VPN.
Per informazioni sulla creazione di endpoint di interfaccia, consulta Endpoint VPC di interfaccia (AWS PrivateLink) nella Guida di AWS PrivateLink.
Argomenti
- Tipi di endpoint VPC per Amazon S3
- Restrizioni e limitazioni di AWS PrivateLink per Amazon S3
- Creazione di un endpoint VPC
- Accesso agli endpoint di interfaccia di Amazon S3
- Accesso ai bucket e ai punti di accesso S3 dagli endpoint di interfaccia S3
- Aggiornamento di una configurazione DNS locale
- Creazione di una policy per l'endpoint VPC per Amazon S3
Tipi di endpoint VPC per Amazon S3
Puoi utilizzare due tipi di endpoint VPC per accedere agli endpoint del gateway e agli endpoint di interfaccia di Simple Storage Service (Amazon S3) mediante AWS PrivateLink. Un endpoint gateway è un gateway che viene specificato nella tabella di routing per accedere ad Amazon S3 dal VPC tramite la rete AWS. Gli endpoint di interfaccia estendono la funzionalità degli endpoint gateway utilizzando IP privati per instradare le richieste ad Amazon S3 dall'interno del VPC, in locale, o da una Regione AWS utilizzando il peering VPC o AWS Transit Gateway. Per ulteriori informazioni, consulta Che cos'è il peering di VPC? e Transit Gateway e peering di VPC.
Gli endpoint di interfaccia sono compatibili con gli endpoint gateway. Se disponi di un endpoint gateway nel VPC, puoi utilizzare entrambi i tipi di endpoint nello stesso VPC.
Endpoint gateway per Amazon S3 |
Endpoint di interfaccia per Amazon S3 |
---|---|
In entrambi i casi, il traffico di rete rimane sulla rete AWS. |
|
Uso di indirizzi IP pubblici di Amazon S3 |
Uso di indirizzi IP privati del tuo VPC per accedere ad Amazon S3 |
Uso degli stessi nomi DNS di Simple Storage Service (Amazon S3) |
Richiesta di nomi DNS di Simple Storage Service (Amazon S3) specifici per endpoint |
Non consente l'accesso On-Premise |
Consente l'accesso da On-Premise |
Non consente l'accesso da un'altra Regione AWS |
Come consentire l'accesso da un VPC in un'altra Regione AWS tramite peering VPC o AWS Transit Gateway |
Non fatturata |
Fatturata |
Per ulteriori informazioni sugli endpoint gateway, consulta Endpoint VPC gateway nella Guida di AWS PrivateLink.
Restrizioni e limitazioni di AWS PrivateLink per Amazon S3
Le limitazioni VPC si applicano a AWS PrivateLink per Amazon S3. Per ulteriori informazioni, consulta Proprietà e limitazioni degli endpoint di interfaccia e Quote di AWS PrivateLink nella Guida di AWS PrivateLink. Inoltre, si applicano le limitazioni seguenti:
AWS PrivateLink per Amazon S3 non supporta quanto segue:
-
Utilizzo dell'API CopyObject o dell'API UploadPartCopy tra bucket in Regioni AWS diverse
-
Transport Layer Security (TLS) 1.0
Creazione di un endpoint VPC
Per creare un endpoint di interfaccia VPC, consulta Creazione di un endpoint VPC nella Guida AWS PrivateLink.
Accesso agli endpoint di interfaccia di Amazon S3
Per accedere ad Amazon S3 tramite AWS PrivateLink, è necessario aggiornare le applicazioni in modo che utilizzino nomi DNS specifici degli endpoint.
Quando crei un endpoint di interfaccia, Amazon S3 genera due tipi di nomi DNS S3 specifici dell'endpoint: regionale e zonale.
-
I nomi DNS regionali includono un ID endpoint VPC univoco, un identificatore di servizio, la Regione AWS e
vpce.amazonaws.com
con il relativo nome. Ad esempio, per l'ID endpoint VPC
, il nome DNS generato potrebbe essere simile avpce-1a2b3c4d
.vpce-1a2b3c4d-5e6f
.s3.us-east-1.vpce.amazonaws.com -
I nomi DNS zonali includono la zona di disponibilità, ad esempio
. Puoi utilizzare questa opzione se l'architettura isola le zone di disponibilità. Ad esempio, puoi utilizzarla per il contenimento degli errori o per ridurre i costi di trasferimento dei dati a livello regionale.vpce-1a2b3c4d-5e6f
-us-east-1a.s3.us-east-1.vpce.amazonaws.com
I nomi DNS S3 specifici degli endpoint possono essere risolti dal dominio DNS pubblico S3.
Gli endpoint dell'interfaccia Amazon S3 non supportano la funzionalità DNS privata degli endpoint di interfaccia. Per ulteriori informazioni sul DNS privato per gli endpoint di interfaccia, consulta la Guida di AWS PrivateLink.
Accesso ai bucket e ai punti di accesso S3 dagli endpoint di interfaccia S3
Puoi utilizzare la AWS CLI o gli SDK AWS per accedere a bucket, punti di accesso S3 e API di controllo S3 tramite endpoint di interfaccia S3.
Nell'immagine seguente viene illustrata la scheda Dettagli della console VPC, in cui è possibile trovare il nome DNS di un endpoint VPC. In questo esempio, l'ID endpoint VPC (vpce-id) è vpce-0e25b8cdd720f900e
e il nome DNS è *.vpce-0e25b8cdd720f900e-argc85vg.s3.us-east-1.vpce.amazonaws.com
. Ricorda di sostituire *
quando utilizzi il nome DNS. Ad esempio, per accedere a un bucket, usa un nome DNS simile a bucket.vpce-0e25b8cdd720f900e-argc85vg.s3.us-east-1.vpce.amazonaws.com
.

Per ulteriori informazioni su come visualizzare i nomi DNS specifici degli endpoint, consulta Visualizzazione della configurazione dei nomi DNS privati del servizio endpoint nella Guida per l'utente di VPC.
Esempi di AWS CLI
Utilizza i parametri --region
e --endpoint-url
per accedere ai bucket S3, ai punti di accesso S3 o alle API di controllo S3 tramite gli endpoint dell'interfaccia S3.
Esempio: utilizzo dell'URL dell'endpoint per elencare gli oggetti nel bucket
Nell'esempio seguente, sostituisci la regione
, il nome DNS dell'ID endpoint VPC us-east-1
e il nome del bucket vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
con le informazioni appropriate.my-bucket
aws s3 --region
us-east-1
--endpoint-url https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
ls s3://my-bucket
/
Esempio: utilizzo dell'URL dell'endpoint per elencare gli oggetti da un punto di accesso
Nell'esempio seguente, sostituisci l'ARN
, la regione us-east-1:123456789012:accesspoint/test
e l'ID endpoint VPC us-east-1
con le informazioni appropriate.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
aws s3api list-objects-v2 --bucket arn:aws:s3:
us-east-1:123456789012:accesspoint/test
--regionus-east-1
--endpoint-url https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
Esempio: utilizzo dell'URL dell'endpoint per elencare i processi con controllo S3
Nell'esempio seguente, sostituisci la regione
, l'ID endpoint VPC us-east-1
e l'ID account vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
con le informazioni appropriate.12345678
aws s3control --region
us-east-1
--endpoint-url https://control.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
list-jobs --account-id12345678
Esempi di SDK AWS
Aggiorna gli SDK alla versione più recente e configura i client per utilizzare un URL endpoint per accedere a un bucket, un access point o un'API di controllo S3 tramite endpoint di interfaccia S3.
Aggiornamento di una configurazione DNS locale
Quando si utilizzano nomi DNS specifici degli endpoint per accedere agli endpoint di interfaccia per Amazon S3, non è necessario aggiornare il resolver DNS locale. Puoi risolvere il nome DNS specifico dell'endpoint con l'indirizzo IP privato dell'endpoint di interfaccia dal dominio DNS Amazon S3 pubblico.
Utilizzo degli endpoint di interfaccia per accedere ad Amazon S3 senza un endpoint gateway o un gateway Internet nel VPC
Gli endpoint di interfaccia nel VPC possono instradare sia le applicazioni nel VPC che le applicazioni locali ad Amazon S3 sulla rete Amazon, come illustrato nel diagramma seguente.

Il diagramma illustra quanto segue:
-
La rete locale utilizza AWS Direct Connect o AWS VPN per connettersi a VPC A.
-
Le applicazioni in locale e in VPC A utilizzano nomi DNS specifici degli endpoint per accedere ad Amazon S3 tramite l'endpoint di interfaccia S3.
-
Le applicazioni On-Premise inviano dati all'endpoint di interfaccia nel VPC tramite AWS Direct Connect (oAWS VPN ). AWS PrivateLink sposta i dati dall'endpoint di interfaccia ad Amazon S3 sulla rete AWS.
-
Anche le applicazioni nel VPC inviano traffico all'endpoint di interfaccia. AWS PrivateLink sposta i dati dall'endpoint di interfaccia ad Amazon S3 sulla rete AWS.
Utilizzo di endpoint gateway e endpoint di interfaccia insieme nello stesso VPC per accedere ad Amazon S3
Puoi creare endpoint di interfaccia e mantenere l'endpoint gateway esistente nello stesso VPC, come illustrato nel diagramma seguente. In questo modo, si consente alle applicazioni nel VPC di continuare ad accedere ad Amazon S3 tramite l'endpoint gateway senza essere fatturate. Quindi, solo le applicazioni On-Premise utilizzerebbero gli endpoint di interfaccia per accedere ad Amazon S3. Per accedere a S3 in questo modo, è necessario aggiornare le applicazioni On-Premise per utilizzare nomi DNS specifici degli endpoint per Amazon S3.

Il diagramma illustra quanto segue:
-
Le applicazioni On-Premise utilizzano nomi DNS specifici dell'endpoint per inviare dati all'endpoint di interfaccia nel VPC tramite AWS Direct Connect (o AWS VPN). AWS PrivateLink sposta i dati dall'endpoint di interfaccia ad Amazon S3 sulla rete AWS.
-
Utilizzando i nomi Amazon S3 regionali predefiniti, le applicazioni nel VPC inviano dati all'endpoint gateway che si connette ad Amazon S3 tramite la rete AWS.
Per ulteriori informazioni sugli endpoint gateway, consulta Endpoint VPC gateway nella Guida per l'utente di VPC.
Creazione di una policy per l'endpoint VPC per Amazon S3
Puoi allegare una policy di endpoint all'endpoint VPC che controlla l'accesso ad Amazon S3. Questa policy specifica le informazioni riportate di seguito:
-
Il principale AWS Identity and Access Management (IAM) che può eseguire operazioni
-
Le operazioni che possono essere eseguite
-
Le risorse sui cui si possono eseguire operazioni
Puoi utilizzare le policy del bucket di Amazon S3 anche per limitare l'accesso a bucket specifici da un endpoint VPC specifico utilizzando la condizione aws:sourceVpce
nella policy del bucket. Negli esempi seguenti vengono illustrate le policy che limitano l'accesso a un bucket o a un endpoint.
Argomenti
-
Quando si applicano le policy del bucket Amazon S3 per gli endpoint VPC descritti in questa sezione, può capitare di bloccare involontariamente l'accesso al bucket. Le autorizzazioni del bucket che hanno lo scopo di limitare l'accesso del bucket a connessioni originate dall'endpoint VPC possono bloccare tutte le connessioni al bucket. Per informazioni su come risolvere questo problema, consulta La policy del bucket ha l'ID del VPC o dell'endpoint VPC sbagliato. Come posso correggere la policy in modo da poter accedere al bucket? nel
Knowledge Center di AWS Support. -
Prima di utilizzare la policy di esempio seguente, sostituire l'ID endpoint VPC con un valore appropriato per il caso d'uso. In caso contrario, non sarà possibile accedere al bucket.
-
Questa policy disabilita l'accesso alla console al bucket specificato in quanto le richieste della console non provengono dall'endpoint VPC specificato.
Esempio: limitazione dell'accesso a un bucket specifico da un endpoint VPC
Puoi creare una policy di endpoint che limita l'accesso solo a bucket Amazon S3 specifici. Ciò è utile se hai altri servizi AWS nel VPC che utilizzano bucket. La seguente policy del bucket limita l'accesso solo a
. Sostituisci DOC-EXAMPLE-BUCKET1
con il nome del tuo bucket.DOC-EXAMPLE-BUCKET1
{ "Version": "2012-10-17", "Id": "Policy1415115909151", "Statement": [ { "Sid": "Access-to-specific-bucket-only", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::
", "arn:aws:s3:::
DOC-EXAMPLE-BUCKET1
/*"] } ] }
DOC-EXAMPLE-BUCKET1
Esempio: limitazione dell'accesso ai bucket in un account specifico da un endpoint VPC
Puoi creare una policy che limita l'accesso solo ai bucket S3 in un Account AWS specifico. Utilizza questa opzione per impedire ai client all'interno del VPC di accedere ai bucket che non sono di tua proprietà. Nell'esempio seguente viene creata una policy che limita l'accesso alle risorse di proprietà di un singolo ID Account AWS, 111122223333
.
{ "Statement": [ { "Sid": "Access-to-bucket-in-specific-account-only", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Deny", "Resource": "arn:aws:s3:::*", "Condition": { "StringNotEquals": { "aws:ResourceAccount": "
111122223333
" } } } ] }
Puoi utilizzare la chiave aws:ResourceAccount
o s3:ResourceAccount
nella policy IAM per specificare l'ID dell'Account AWS della risorsa a cui stai accedendo. Ricordare, tuttavia, che alcuni servizi AWS si basano sull'accesso a bucket gestiti da AWS. Pertanto, l'utilizzo di aws:ResourceAccount
o della chiave s3:ResourceAccount
nella policy IAM potrebbe anche influire sull'accesso a queste risorse.
Esempio: limitazione dell'accesso a un endpoint VPC specifico nella policy del bucket S3
Esempio: limitazione dell'accesso a un endpoint VPC specifico nella policy del bucket S3
La seguente policy del bucket Amazon S3 consente l'accesso a un bucket specifico,
, solo dall'endpoint DOC-EXAMPLE-BUCKET2
. La policy nega l'accesso al bucket se l'endpoint specificato non è in uso. La condizione vpce-1a2b3c4d
aws:sourceVpce
viene utilizzata per specificare l'endpoint e non richiede un Amazon Resource Name (ARN) per la risorsa dell'endpoint VPC, ma solo l'ID dell'endpoint. Sostituisci
e DOC-EXAMPLE-BUCKET2
con un nome bucket e un endpoint reali. vpce-1a2b3c4d
{ "Version": "2012-10-17", "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": "s3:*", "Effect": "Deny", "Resource": ["arn:aws:s3:::
", "arn:aws:s3:::
DOC-EXAMPLE-BUCKET2
"], "Condition": {"StringNotEquals": {"aws:sourceVpce": "
DOC-EXAMPLE-BUCKET2
/*vpce-1a2b3c4d
"}} } ] }
Per altri esempi di policy, consulta Endpoint per Amazon S3 nella Guida per l'utente di VPC.
Per maggiori informazioni sulla connettività VPC, consulta Opzioni di connettività da rete a VPC nel whitepaper AWS Opzioni di connettività di Amazon Virtual Private Cloud.