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à.
Importante
Questa documentazione riguarda la versione 2017.11.29 (legacy) delle tabelle globali, che dovrebbe essere evitata per le nuove tabelle globali. I clienti devono utilizzare la versione 2019.11.21 (corrente) di Global Tables quando possibile, poiché offre maggiore flessibilità, maggiore efficienza e consuma meno capacità di scrittura rispetto alla 2017.11.29 (Legacy).
Per determinare la versione in uso, consultare Determinazione della versione della tabella globale di DynamoDB in uso. Per aggiornare le tabelle globali esistenti dalla versione 2017.11.29 (legacy) alla versione 2019.11.21 (corrente), consultare Aggiornamento delle tabelle globali.
Quando si crea una tabella globale per la prima volta, Amazon DynamoDB crea automaticamente un ruolo collegato al servizio AWS Identity and Access Management (IAM) per conto tuo. Questo ruolo è denominato AWSServiceRoleForDynamoDBReplication
Per ulteriori informazioni sui ruoli collegati al servizio, consulta Utilizzo dei ruoli collegati al servizio nella Guida per l'utente IAM.
Per creare e gestire tabelle globali in DynamoDB, è necessario disporre dell'autorizzazione dynamodb:CreateGlobalTable
per accedere a ciascuno dei seguenti elementi:
-
La tabella di replica che si desidera aggiungere.
-
Ogni replica esistente che fa già parte della tabella globale.
-
La tabella globale stessa.
Per aggiornare le impostazioni (UpdateGlobalTableSettings
) per una tabella globale in DynamoDB, è necessario disporre delle autorizzazioni dynamodb:UpdateGlobalTable
, dynamodb:DescribeLimits
, application-autoscaling:DeleteScalingPolicy
e application-autoscaling:DeregisterScalableTarget
.
Le autorizzazioni application-autoscaling:DeleteScalingPolicy
e application-autoscaling:DeregisterScalableTarget
sono necessarie quando si aggiorna una policy di dimensionamento esistente. In questo modo il servizio delle tabelle globali può rimuovere la vecchia policy di dimensionamento prima di allegare la nuova policy alla tabella o all'indice secondario.
Se per gestire l'accesso a una tabella di replica si utilizza una policy IAM, è necessario applicare una policy identica a tutte le altre repliche all'interno di tale tabella globale. Questa procedura consente di mantenere un modello di autorizzazioni coerente in tutte le tabelle di replica.
L'uso di policy IAM identiche su tutte le repliche in una tabella globale consente inoltre di evitare di dover concedere l'accesso non intenzionale in lettura e scrittura ai dati delle tabelle globali. Si consideri, ad esempio, un utente che ha accesso a una sola replica in una tabella globale. Se tale utente può scrivere su questa replica, DynamoDB propaga la scrittura a tutte le altre tabelle di replica. In effetti, l'utente può (indirettamente) scrivere su tutte le altre repliche nella tabella globale. Questo scenario può essere evitato utilizzando policy IAM coerenti su tutte le tabelle di replica.
CreateGlobalTableEsempio: consentire l'azione
Prima di poter aggiungere una replica a una tabella globale, è necessario disporre dell'autorizzazione dynamodb:CreateGlobalTable
per la tabella globale e per ciascuna delle relative tabelle di replica.
La seguente policy IAM concede le autorizzazioni per consentire l'operazione CreateGlobalTable
su tutte le tabelle.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["dynamodb:CreateGlobalTable"],
"Resource": "*"
}
]
}
Esempio: consentire le azioni UpdateGlobalTable, DescribeLimits, application-autoscaling: e application-autoscaling: DeleteScalingPolicy DeregisterScalableTarget
Per aggiornare le impostazioni (UpdateGlobalTableSettings
) per una tabella globale in DynamoDB, è necessario disporre delle autorizzazioni dynamodb:UpdateGlobalTable
, dynamodb:DescribeLimits
, application-autoscaling:DeleteScalingPolicy
e application-autoscaling:DeregisterScalableTarget
.
La seguente policy IAM concede le autorizzazioni per consentire l'operazione UpdateGlobalTableSettings
su tutte le tabelle.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:UpdateGlobalTable",
"dynamodb:DescribeLimits",
"application-autoscaling:DeleteScalingPolicy",
"application-autoscaling:DeregisterScalableTarget"
],
"Resource": "*"
}
]
}
Esempio: consente l' CreateGlobalTable azione per uno specifico nome di tabella globale con repliche consentite solo in determinate aree
La seguente policy IAM concede le autorizzazioni per consentire l'operazione CreateGlobalTable
per creare una tabella globale denominata Customers
con repliche in due regioni.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "dynamodb:CreateGlobalTable",
"Resource": [
"arn:aws:dynamodb::123456789012:global-table/Customers",
"arn:aws:dynamodb:us-east-1:123456789012:table/Customers",
"arn:aws:dynamodb:us-west-1:123456789012:table/Customers"
]
}
]
}