AWS PrivateLink per DynamoDB - Amazon DynamoDB

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

AWS PrivateLink per DynamoDB

Con AWS PrivateLink for DynamoDB, puoi effettuare il provisioning degli endpoint Amazon VPC di interfaccia (endpoint di interfaccia) nel tuo cloud privato virtuale (Amazon VPC). Questi endpoint sono accessibili direttamente dalle applicazioni locali tramite VPN e/o in un altro modo Regione AWS tramite il peering Amazon VPC. Direct Connect Utilizzando AWS PrivateLink e gli endpoint di interfaccia è possibile semplificare la connettività di rete privata dalle applicazioni a DynamoDB.

Le applicazioni presenti nel VPC non richiedono indirizzi IP pubblici per comunicare con DynamoDB utilizzando gli endpoint di interfaccia VPC per le operazioni DynamoDB. Gli endpoint dell'interfaccia sono rappresentati da una o più interfacce di rete elastiche (ENIs) a cui vengono assegnati indirizzi IP privati dalle sottoreti del tuo Amazon VPC. Le richieste a DynamoDB tramite gli endpoint di interfaccia rimangono nella rete Amazon. Puoi anche accedere agli endpoint di interfaccia nel tuo Amazon VPC da applicazioni locali AWS Direct Connect tramite AWS Virtual Private Network o ().Site-to-Site VPN Per ulteriori informazioni su come connettere l’Amazon VPC alla rete on-premises, consulta la Guida per l’utente di Direct Connect e la Guida per l’utente di AWS Site-to-Site VPN.

Per informazioni generali sugli endpoint di interfaccia, consulta Interface Amazon VPC endpoints AWS PrivateLink() nella Guida.AWS PrivateLink AWS PrivateLink è supportato anche per gli endpoint Amazon DynamoDB Streams. Per ulteriori informazioni, consulta AWS PrivateLink per DynamoDB Streams.

Tipi di endpoint Amazon VPC per Amazon DynamoDB

Puoi utilizzare due tipi di endpoint Amazon VPC per accedere ad Amazon DynamoDB: endpoint gateway ed endpoint di interfaccia (utilizzando). AWS PrivateLink Un endpoint gateway è un gateway specificato nella tabella di routing per accedere a DynamoDB dal tuo Amazon VPC attraverso la rete. AWS Gli endpoint di interfaccia estendono la funzionalità degli endpoint gateway utilizzando indirizzi IP privati per instradare le richieste a DynamoDB dall'interno del tuo Amazon VPC, in locale o da un Amazon VPC in un altro tramite il peering Amazon VPC o. Regione AWS AWS Transit Gateway Per ulteriori informazioni, consulta What is Amazon VPC peering? e Transit Gateway vs Amazon VPC peering.

Gli endpoint di interfaccia sono compatibili con gli endpoint gateway. Se si dispone di un endpoint gateway nell’Amazon VPC, è possibile utilizzare entrambi i tipi di endpoint nello stesso Amazon VPC.

Endpoint gateway per DynamoDB

Endpoint di interfaccia per DynamoDB

In entrambi i casi, il traffico di rete rimane sulla rete. AWS

Utilizzo di indirizzi IP pubblici per Amazon DynamoDB

Utilizzo di indirizzi IP privati del proprio Amazon VPC per accedere ad Amazon DynamoDB

Non consente l'accesso da on-premise

Consente l'accesso da On-Premise

Non consentire l'accesso da un altro Regione AWS

Consenti l'accesso da un endpoint Amazon VPC a un altro Regione AWS utilizzando il peering Amazon VPC o AWS Transit Gateway

Non fatturata

Fatturata

Per ulteriori informazioni sugli endpoint gateway, consulta Gateway Amazon VPC endpoints nella Guida ad AWS PrivateLink .

Le considerazioni relative ad Amazon VPC si applicano ad Amazon AWS PrivateLink DynamoDB. Per ulteriori informazioni, consulta Considerazioni di un endpoint di interfaccia e Quote di AWS PrivateLink nella Guida di AWS PrivateLink . Inoltre, si applicano le limitazioni seguenti:

AWS PrivateLink per Amazon DynamoDB non supporta quanto segue:

  • Transport Layer Security (TLS) 1.1

  • Servizi del sistema dei nomi di dominio (DNS) privati e ibridi

Puoi inviare fino a 50.000 richieste al secondo per ogni AWS PrivateLink endpoint abilitato.

Nota

I timeout di connettività di rete verso gli AWS PrivateLink endpoint non rientrano nell'ambito delle risposte di errore di DynamoDB e devono essere gestiti in modo appropriato dalle applicazioni che si connettono agli endpoint. PrivateLink

Creazione di un endpoint Amazon VPC

Per creare un endpoint Amazon VPC di interfaccia, consulta Create an Amazon VPC endpoint nella Guida ad AWS PrivateLink .

Accesso agli endpoint di interfaccia Amazon DynamoDB

Quando si crea un endpoint di interfaccia, DynamoDB genera due tipi di nomi DNS DynamoDB specifici dell’endpoint: Regionale e zonale.

  • Un nome DNS regionale include un ID endpoint Amazon VPC univoco, un identificatore di servizio, Regione AWSvpce.amazonaws.com la e nel nome. Ad esempio, per l’ID dell’endpoint Amazon VPC vpce-1a2b3c4d, il nome DNS generato potrebbe essere simile a vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com.

  • I nomi DNS zonali includono la zona di disponibilità, ad esempio vpce-1a2b3c4d-5e6f-us-east-1a.dynamodb.us-east-1.vpce.amazonaws.com. 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.

Nota

Per ottenere un’affidabilità ottimale, si consiglia di implementare il servizio su un minimo di tre zone di disponibilità.

Accesso alle tabelle DynamoDB e alle operazioni API di controllo dagli endpoint di interfaccia DynamoDB

È possibile utilizzare AWS CLI o AWS SDKs per accedere alle tabelle DynamoDB e controllare le operazioni delle API tramite gli endpoint dell'interfaccia DynamoDB.

Per accedere alle tabelle DynamoDB o alle operazioni dell'API di controllo DynamoDB tramite gli endpoint dell'interfaccia DynamoDB nei comandi, utilizza i parametri and. AWS CLI --region --endpoint-url

Esempio: creazione di un endpoint VPC

aws ec2 create-vpc-endpoint \ --region us-east-1 \ --service-name com.amazonaws.us-east-1.dynamodb \ --vpc-id client-vpc-id \ --subnet-ids client-subnet-id \ --vpc-endpoint-type Interface \ --security-group-ids client-sg-id

Esempio: modifica di un endpoint VPC

aws ec2 modify-vpc-endpoint \ --region us-east-1 \ --vpc-endpoint-id client-vpc-endpoint-id \ --policy-document policy-document \ #example optional parameter --add-security-group-ids security-group-ids \ #example optional parameter # any additional parameters needed, see Privatelink documentation for more details

Esempio: creazione di un elenco di tabelle utilizzando un URL dell’endpoint

Nell’esempio seguente, sostituisci la Regione us-east-1 e il nome DNS dell’ID dell’endpoint VPC vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com con le informazioni appropriate.

aws dynamodb --region us-east-1 --endpoint https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com list-tables

Per accedere alle tabelle DynamoDB o alle operazioni dell'API di controllo DynamoDB tramite gli endpoint dell'interfaccia DynamoDB quando si utilizza DynamoDB, è necessario aggiornare la versione alla versione più recente. AWS SDKs SDKs Quindi configura i client per utilizzare un URL dell’endpoint per accedere a una tabella o a un’operazione API di controllo DynamoDB tramite gli endpoint di interfaccia DynamoDB.

SDK for Python (Boto3)
Esempio: utilizzo di un URL dell’endpoint per accedere a una tabella DynamoDB

Nell'esempio seguente, sostituisci la Regione us-east-1 e l'ID endpoint VPC https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com con le informazioni appropriate.

ddb_client = session.client( service_name='dynamodb', region_name='us-east-1', endpoint_url='https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com' )
SDK for Java 1.x
Esempio: utilizzo di un URL dell’endpoint per accedere a una tabella DynamoDB

Nell'esempio seguente, sostituisci la Regione us-east-1 e l'ID endpoint VPC https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com con le informazioni appropriate.

//client build with endpoint config final AmazonDynamoDB dynamodb = AmazonDynamoDBClientBuilder.standard().withEndpointConfiguration( new AwsClientBuilder.EndpointConfiguration( "https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com", Regions.DEFAULT_REGION.getName() ) ).build();
SDK for Java 2.x
Esempio: utilizzo di un URL dell’endpoint per accedere a una tabella DynamoDB

Nell'esempio seguente, sostituisci la regione us-east-1 e l'ID https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com endpoint VPC con le tue informazioni.

Region region = Region.US_EAST_1; dynamoDbClient = DynamoDbClient.builder().region(region) .endpointOverride(URI.create("https://vpce-1a2b3c4d-5e6f.dynamodb.us-east-1.vpce.amazonaws.com")) .build()

Aggiornamento di una configurazione DNS locale

Quando si utilizzano nomi DNS specifici degli endpoint per accedere agli endpoint di interfaccia per DynamoDB, non è necessario aggiornare il resolver DNS on-premises. È possibile risolvere il nome DNS specifico dell’endpoint con l’indirizzo IP privato dell’endpoint di interfaccia dal dominio DNS pubblico di DynamoDB.

Utilizzo degli endpoint di interfaccia per accedere a DynamoDB senza un endpoint gateway o un gateway Internet nell’Amazon VPC

Gli endpoint di interfaccia nell’Amazon VPC possono instradare sia le applicazioni nell’Amazon VPC che le applicazioni on-premises a DynamoDB sulla rete Amazon, come illustrato nel diagramma seguente.

Diagramma di flusso dei dati che mostra l’accesso dalle app on-premises e nell’Amazon VPC a DynamoDB utilizzando un endpoint di interfaccia e AWS PrivateLink.

Il diagramma illustra quanto segue:

  • La tua rete locale utilizza Direct Connect o Site-to-Site VPN per connettersi ad Amazon VPC A.

  • Le applicazioni on-premises e nell’Amazon VPC A utilizzano nomi DNS specifici degli endpoint per accedere a DynamoDB tramite l’endpoint di interfaccia DynamoDB.

  • Le applicazioni locali inviano dati all'endpoint di interfaccia in Amazon VPC tramite Direct Connect (o). Site-to-Site VPN AWS PrivateLink sposta i dati dall'endpoint dell'interfaccia a DynamoDB attraverso la rete. AWS

  • Le applicazioni VPC di Amazon inviano inoltre traffico all'endpoint dell'interfaccia. AWS PrivateLink sposta i dati dall'endpoint dell'interfaccia a DynamoDB attraverso la rete. AWS

Utilizzo di endpoint gateway e di endpoint di interfaccia insieme nello stesso Amazon VPC per accedere a DynamoDB

È possibile creare endpoint di interfaccia e mantenere l’endpoint gateway esistente nello stesso Amazon VPC, come illustrato nel diagramma seguente. Con questo approccio si consente alle applicazioni nell’Amazon VPC di continuare ad accedere a DynamoDB tramite l’endpoint gateway senza incorrere nella fatturazione. Pertanto, solo le applicazioni on-premises utilizzerebbero gli endpoint di interfaccia per accedere a DynamoDB. Per accedere a DynamoDB in questo modo, è necessario aggiornare le applicazioni on-premises per utilizzare nomi DNS specifici degli endpoint per DynamoDB.

Diagramma di un flusso di dati che mostra l’accesso a DynamoDB utilizzando gli endpoint gateway e gli endpoint di interfaccia insieme.

Il diagramma illustra quanto segue:

  • Le applicazioni locali utilizzano nomi DNS specifici dell'endpoint per inviare dati all'endpoint di interfaccia all'interno di Amazon VPC tramite (o). Direct Connect Site-to-Site VPN AWS PrivateLink sposta i dati dall'endpoint dell'interfaccia a DynamoDB attraverso la rete. AWS

  • Utilizzando nomi DynamoDB regionali predefiniti, le applicazioni VPC interne ad Amazon inviano dati all'endpoint gateway che si connette a DynamoDB tramite la rete. AWS

Per ulteriori informazioni sugli endpoint gateway, consulta Gateway Amazon VPC endpoints nella Guida per l’utente di Amazon VPC.

Creazione di una policy sugli endpoint Amazon VPC per DynamoDB

È possibile collegare una policy sugli endpoint al proprio endpoint Amazon VPC che controlla l’accesso a DynamoDB. Questa policy specifica le informazioni riportate di seguito:

  • Il principale AWS Identity and Access Management (IAM) che può eseguire azioni

  • Le azioni che possono essere eseguite

  • Le risorse sui cui si possono eseguire le azioni

È possibile creare una policy sugli endpoint che limita l’accesso solo a una tabella DynamoDB specifica. Questo tipo di policy è utile se Servizi AWS nel tuo Amazon VPC ne hai altre che utilizzano tabelle. La seguente policy sulle tabella limita l’accesso solo a DOC-EXAMPLE-TABLE. Per utilizzare questa policy sugli endpoint, sostituisci DOC-EXAMPLE-TABLE con il nome della tabella.

JSON
{ "Version":"2012-10-17", "Id": "Policy1216114807515", "Statement": [ { "Sid": "Access-to-specific-table-only", "Principal": "*", "Action": [ "dynamodb:GetItem", "dynamodb:PutItem" ], "Effect": "Allow", "Resource": ["arn:aws:dynamodb:us-east-1:111122223333:table/DOC-EXAMPLE-TABLE", "arn:aws:dynamodb:us-east-1:111122223333:table/DOC-EXAMPLE-TABLE/*"] } ] }

Utilizzo degli endpoint DynamoDB con accesso privato a Console di gestione AWS

È necessario configurare la configurazione DNS per DynamoDB e i flussi DynamoDB quando si utilizzano endpoint VPC con la console DynamoDB nell’Accesso privato alla Console di gestione AWS.

Per configurare DynamoDB in modo che sia accessibile Console di gestione AWS in Private Access, è necessario creare i due endpoint VPC seguenti:

  • com.amazonaws.<region>.dynamodb

  • com.amazonaws.<region>.dynamodb-streams

Durante la creazione degli endpoint VPC, accedi alla console Route53 e crea una zona ospitata privata per DynamoDB utilizzando l’endpoint Regionale dynamodb.us-east-1.amazonaws.com.

Crea i seguenti due record di alias nella zona ospitata privata:

  • dynamodb.<region>.amazonaws.com che instrada il traffico verso l’endpoint VPC com.amazonaws.<region>.dynamodb.

  • streams.dynamodb.<region>.amazonaws.com che instrada il traffico verso l’endpoint VPC com.amazonaws.<region>.dynamodb-streams.