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à.
Modifica del proprietario della replica
Nella replica, il proprietario dell'oggetto di origine possiede anche la replica per impostazione predefinita. Tuttavia, quando i bucket di origine e di destinazione sono di proprietà di diversi Account AWS, potresti voler modificare la proprietà della replica. Ad esempio, potresti voler modificare la proprietà per limitare l'accesso alle repliche degli oggetti. Nella configurazione di replica, è possibile aggiungere impostazioni di configurazione opzionali per modificare la proprietà della replica a Account AWS quella proprietaria dei bucket di destinazione.
Per modificare il proprietario della replica, procedi come segue:
-
Aggiungi l'opzione Owner Override alla configurazione di replica per indicare ad Amazon S3 di cambiare la proprietà della replica.
-
Concedi ad Amazon S3 l'
s3:ObjectOwnerOverrideToBucketOwner
autorizzazione a modificare la proprietà delle repliche. -
Aggiungi l'
s3:ObjectOwnerOverrideToBucketOwner
autorizzazione nella policy del bucket di destinazione per consentire la modifica della proprietà della replica. L's3:ObjectOwnerOverrideToBucketOwner
autorizzazione consente al proprietario dei bucket di destinazione di accettare la proprietà delle repliche degli oggetti.
Per ulteriori informazioni, consulta Considerazioni sull'opzione Ownership Ownerride e Aggiunta dell'opzione di sostituzione del proprietario alla configurazione della replica. Per un esempio funzionante con step-by-step istruzioni, vedere. Come modificare il proprietario della replica
Importante
Invece di utilizzare l'opzione owner override, puoi utilizzare l'impostazione forzata del proprietario del bucket per Object Ownership. Quando si utilizza la replica e i bucket di origine e di destinazione sono di proprietà di diversi Account AWS, il proprietario del bucket di destinazione può utilizzare l'impostazione imposta dal proprietario del bucket per Object Ownership per modificare la proprietà della replica con quella proprietaria del bucket di destinazione. Account AWS Questa impostazione disabilita gli elenchi di controllo dell'accesso agli oggetti (). ACLs
L'impostazione applicata dal proprietario del bucket imita il comportamento di override del proprietario esistente senza la necessità dell'autorizzazione. s3:ObjectOwnerOverrideToBucketOwner
Tutti gli oggetti replicati nel bucket di destinazione con l'impostazione proprietario del bucket applicato sono di proprietà del proprietario del bucket di destinazione. Per ulteriori informazioni su Object Ownership, consulta Controllo della proprietà degli oggetti e disattivazione ACLs del bucket.
Considerazioni sull'opzione Ownership Ownerride
Quando configuri l'opzione di sostituzione del proprietario, si applicano le seguenti considerazioni:
-
Per impostazione predefinita, il proprietario dell'oggetto di origine possiede anche la replica. Amazon S3 replica la versione dell'oggetto e quella ACL ad essa associata.
Se aggiungi l'opzione Owner Override alla configurazione di replica, Amazon S3 replica solo la versione dell'oggetto, non la. ACL Inoltre, Amazon S3 non replica le modifiche successive all'oggetto di origine. ACL Amazon S3 imposta la replica che garantisce ACL il pieno controllo al proprietario del bucket di destinazione.
-
Quando aggiorni una configurazione di replica per abilitare o disabilitare l'override del proprietario, si verifica il seguente comportamento:
-
Se aggiungi l'opzione di sostituzione del proprietario alla configurazione della replica:
Quando Amazon S3 replica una versione dell'oggetto, scarta ACL quella associata all'oggetto di origine. Invece, Amazon S3 lo imposta ACL sulla replica, dando il pieno controllo al proprietario del bucket di destinazione. Amazon S3 non replica le modifiche successive all'oggetto di origine. ACL Tuttavia, questa ACL modifica non si applica alle versioni degli oggetti che sono state replicate prima dell'impostazione dell'opzione owner override. ACLgli aggiornamenti sugli oggetti di origine che sono stati replicati prima dell'impostazione dell'override del proprietario continuano a essere replicati (poiché l'oggetto e le relative repliche continuano ad avere lo stesso proprietario).
-
Se rimuovi l'opzione di sostituzione del proprietario dalla configurazione della replica:
Amazon S3 replica i nuovi oggetti che appaiono nel bucket di origine e quelli associati ACLs ai bucket di destinazione. Per gli oggetti che sono stati replicati prima della rimozione dell'override del proprietario, Amazon S3 non esegue la replica perché ACLs la modifica della proprietà dell'oggetto apportata da Amazon S3 rimane in vigore. In altre ACLs parole, la versione dell'oggetto che è stata replicata quando è stata impostata l'override del proprietario continua a non essere replicata.
-
Aggiunta dell'opzione di sostituzione del proprietario alla configurazione della replica
avvertimento
Aggiungi l'opzione owner override solo quando i bucket di origine e di destinazione sono di proprietà di diversi. Account AWS Amazon S3 non verifica se i bucket appartengono allo stesso account o a account diversi. Se aggiungi l'override del proprietario quando entrambi i bucket sono di proprietà dello stesso Account AWS, Amazon S3 applica l'override del proprietario. Questa opzione concede le autorizzazioni complete al proprietario del bucket di destinazione e non replica gli aggiornamenti successivi alle liste di controllo degli accessi degli oggetti di origine (). ACLs Il proprietario della replica può modificare direttamente ciò che è ACL associato a una replica con una richiesta, ma non tramite la replica. PutObjectAcl
Per specificare l'opzione di sostituzione del proprietario, aggiungi quanto segue all'elemento Destination
:
-
L'elemento
AccessControlTranslation
, che indica ad Amazon S3 di modificare la proprietà della replica -
L'
Account
elemento, che specifica il proprietario del bucket Account AWS di destinazione
<ReplicationConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> ... <Destination> ... <AccessControlTranslation> <Owner>Destination</Owner> </AccessControlTranslation> <Account>
destination-bucket-owner-account-id
</Account> </Destination> </Rule> </ReplicationConfiguration>
Il seguente esempio di configurazione di replica indica ad Amazon S3 di replicare oggetti che hanno
prefisso chiave per il bucket di Imposte
destinazione e modifica della proprietà delle repliche. Per utilizzare questo comando, sostituisci amzn-s3-demo-destination-bucket
con le tue informazioni.user input
placeholders
<?xml version="1.0" encoding="UTF-8"?> <ReplicationConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Role>arn:aws:iam::
account-id
:role/role-name
</Role> <Rule> <ID>Rule-1
</ID> <Priority>1
</Priority> <Status>Enabled</Status> <DeleteMarkerReplication> <Status>Disabled
</Status> </DeleteMarkerReplication> <Filter> <Prefix>Tax
</Prefix> </Filter> <Destination> <Bucket>arn:aws:s3:::amzn-s3-demo-destination-bucket
</Bucket> <Account>destination-bucket-owner-account-id
</Account> <AccessControlTranslation> <Owner>Destination</Owner> </AccessControlTranslation> </Destination> </Rule> </ReplicationConfiguration>
Concessione ad Amazon S3 dell'autorizzazione per modificare la proprietà della replica
Concedi ad Amazon S3 le autorizzazioni per modificare la proprietà della replica aggiungendo l'autorizzazione per l's3:ObjectOwnerOverrideToBucketOwner
azione nella politica delle autorizzazioni associata al ruolo (). AWS Identity and Access Management IAM Questo ruolo è il IAM ruolo che hai specificato nella configurazione di replica che consente ad Amazon S3 di assumere e replicare oggetti per tuo conto. Per utilizzare l'esempio seguente, sostituiscilo
con il nome del bucket di destinazione.amzn-s3-demo-destination-bucket
... { "Effect":"Allow", "Action":[ "s3:ObjectOwnerOverrideToBucketOwner" ], "Resource":"arn:aws:s3:::
amzn-s3-demo-destination-bucket
/*" } ...
Aggiunta dell'autorizzazione alla policy del bucket di destinazione per consentire la modifica della proprietà della replica
Il proprietario del bucket di destinazione deve concedere al proprietario del bucket di origine l'autorizzazione necessaria per modificare la proprietà della replica. Il proprietario del bucket di destinazione concede al proprietario del bucket di origine l'autorizzazione per l'operazione s3:ObjectOwnerOverrideToBucketOwner
. Questa autorizzazione consente al proprietario del bucket di destinazione di accettare la proprietà delle repliche degli oggetti. La seguente istruzione della policy del bucket di esempio mostra come fare: Per utilizzare questo comando, sostituisci
con le tue informazioni.user input placeholders
... { "Sid":"1", "Effect":"Allow", "Principal":{"AWS":"
source-bucket-account-id
"}, "Action":["s3:ObjectOwnerOverrideToBucketOwner"], "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket
/*" } ...
Come modificare il proprietario della replica
Quando i bucket di origine e di destinazione in una configurazione di replica sono di proprietà di diversi Account AWS, puoi dire ad Amazon S3 di cambiare la proprietà della replica con quella proprietaria Account AWS del bucket di destinazione. Gli esempi seguenti mostrano come utilizzare la console Amazon S3, il AWS Command Line Interface (AWS CLI) e il AWS SDKs per modificare la proprietà della replica.
Per step-by-step istruzioni, consulta. Configurazione della replica per i bucket nello stesso account Questo argomento fornisce istruzioni per impostare una configurazione di replica quando i bucket di origine e di destinazione sono di proprietà uguale e diversa. Account AWS
La procedura seguente mostra come modificare la proprietà della replica utilizzando. AWS CLI In questa procedura, esegui le seguenti operazioni:
-
Creare i bucket di origine e di destinazione.
-
Abilita il controllo delle versioni sui bucket.
-
Crea un ruolo AWS Identity and Access Management (IAM) che dia ad Amazon S3 l'autorizzazione a replicare oggetti.
-
Aggiungi la configurazione di replica al bucket di origine.
-
Nella configurazione di replica, si ordina ad Amazon S3 di modificare la proprietà della replica.
-
Verifichi la tua configurazione di replica.
Per modificare la proprietà della replica quando i bucket di origine e di destinazione sono di proprietà di diversi () Account AWSAWS CLI
Per utilizzare i AWS CLI comandi di esempio in questa procedura, sostituiscili
con le tue informazioni. user input placeholders
-
In questo esempio, si creano i bucket di origine e di destinazione in due diversi Account AWS. Per utilizzare questi due account, configurali AWS CLI con due profili denominati. Questo esempio utilizza profili denominati
eAcctA
, rispettivamente. Per informazioni sull'impostazione dei profili di credenziali e sull'utilizzo di profili denominati, vedere Configurazione e impostazioni dei file di credenziali nella Guida per l'AWS Command Line Interface utente.AcctB
Importante
I profili utilizzati per questa procedura devono disporre delle autorizzazioni necessarie. Ad esempio, nella configurazione di replica, si specifica il IAM ruolo che Amazon S3 può assumere. Puoi farlo solo se il profilo che usi dispone dell'
iam:PassRole
autorizzazione. Se si utilizzano le credenziali utente di amministratore per creare un profilo denominato, è possibile eseguire tutte le attività descritte in questa procedura. Per ulteriori informazioni, vedere Concessione a un utente delle autorizzazioni per il trasferimento di un ruolo a un utente Servizio AWS nella Guida per l'IAMutente. -
Creare il bucket di origine e abilitare la funzione Controllo delle versioni. Questo esempio crea un bucket di origine denominato
nella regione Stati Uniti orientali (Virginia settentrionale) ().amzn-s3-demo-source-bucket
us-east-1
aws s3api create-bucket \ --bucket
amzn-s3-demo-source-bucket
\ --regionus-east-1
\ --profileacctA
aws s3api put-bucket-versioning \ --bucket
amzn-s3-demo-source-bucket
\ --versioning-configuration Status=Enabled \ --profileacctA
-
Creare un bucket di destinazione e abilitare la funzione Controllo delle versioni. Questo esempio crea un bucket di destinazione denominato
nella regione Stati Uniti occidentali (Oregon) ().amzn-s3-demo-destination-bucket
us-west-2
Utilizzate un Account AWS profilo diverso da quello utilizzato per il bucket di origine.aws s3api create-bucket \ --bucket
amzn-s3-demo-destination-bucket
\ --regionus-west-2
\ --create-bucket-configuration LocationConstraint=us-west-2
\ --profileacctB
aws s3api put-bucket-versioning \ --bucket
amzn-s3-demo-destination-bucket
\ --versioning-configuration Status=Enabled \ --profileacctB
-
Devi aggiungere l'autorizzazione alla policy del bucket di
destinazione
per consentire la modifica della proprietà della replica.-
Salva la seguente politica in un file denominato
. Assicurati di sostituire ildestination-bucket-policy
.json
con le tue informazioni.segnaposti di input dall'utente
{ "Version": "2012-10-17", "Statement": [ { "Sid":
"destination_bucket_policy_sid"
, "Principal": { "AWS":"source-bucket-owner-account-id"
}, "Action": [ "s3:ReplicateObject", "s3:ReplicateDelete", "s3:ObjectOwnerOverrideToBucketOwner", "s3:ReplicateTags", "s3:GetObjectVersionTagging" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket
/*" ] } ] } -
Aggiungi la politica precedente al bucket di destinazione utilizzando il seguente comando:
put-bucket-policy
aws s3api put-bucket-policy --region
$
{destination-region
} --bucket$
{amzn-s3-demo-destination-bucket
} --policy file://destination_bucket_policy
.json
-
-
Crea un IAM ruolo. Specifica questo ruolo nella configurazione di replica che aggiungi al bucket
source
in un secondo momento. Amazon S3 assume questo ruolo per replicare gli oggetti per tuo conto. Puoi creare un IAM ruolo in due passaggi:-
Crea il ruolo.
-
Collegare una policy di autorizzazione al ruolo.
-
Crea il IAM ruolo.
-
Copiare la seguente policy di attendibilità e salvarla in un file denominato
nella directory corrente sul computer locale. Questa policy concede ad Amazon S3 le autorizzazioni per assumere il ruolo.s3-role-trust-policy
.json{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"s3.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }
-
Esegui il AWS CLI
create-role
comando seguente per creare il IAM ruolo:$
aws iam create-role \ --role-namereplicationRole
\ --assume-role-policy-document file://s3-role-trust-policy
.json \ --profileacctA
Prendi nota dell'Amazon Resource Name (ARN) del IAM ruolo che hai creato. Ti servirà ARN in una fase successiva.
-
-
Collegare una policy di autorizzazione al ruolo.
-
Copiare la seguente policy di autorizzazioni e salvarla in un file denominato
nella directory corrente sul computer locale. Questa policy di accesso concede le autorizzazioni per varie operazioni su oggetti e bucket Amazon S3. Nei passaggi seguenti, alleghi questa politica al IAM ruolo creato in precedenza.s3-role-perm-pol-changeowner
.json{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:GetObjectVersionForReplication", "s3:GetObjectVersionAcl" ], "Resource":[ "arn:aws:s3:::
amzn-s3-demo-source-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:ListBucket", "s3:GetReplicationConfiguration" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-source-bucket
" ] }, { "Effect":"Allow", "Action":[ "s3:ReplicateObject", "s3:ReplicateDelete", "s3:ObjectOwnerOverrideToBucketOwner", "s3:ReplicateTags", "s3:GetObjectVersionTagging" ], "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket
/*" } ] } -
Per allegare la politica di autorizzazioni precedente al ruolo, esegui il comando seguente:
put-role-policy
$
aws iam put-role-policy \ --role-namereplicationRole
\ --policy-document file://s3-role-perm-pol-changeowner
.json \ --policy-namereplicationRolechangeownerPolicy
\ --profileacctA
-
-
-
Aggiungere una configurazione di replica al bucket di origine.
-
AWS CLI Richiede di specificare la configurazione di replica come. JSON Salvate quanto segue JSON in un file denominato
nella directory corrente sul computer locale. Nella configurazione,replication
.jsonAccessControlTranslation
specifica la modifica della proprietà della replica dal proprietario del bucket di origine al proprietario del bucket di destinazione.{ "Role":"
IAM-role-ARN
", "Rules":[ { "Status":"Enabled", "Priority":1, "DeleteMarkerReplication":{ "Status":"Disabled" }, "Filter":{ }, "Status":"Enabled", "Destination":{ "Bucket":"arn:aws:s3:::amzn-s3-demo-destination-bucket
", "Account":"destination-bucket-owner-account-id
", "AccessControlTranslation":{ "Owner":"Destination" } } } ] } -
Modifica il JSON specificando i valori per il nome del bucket di destinazione, l'ID account del proprietario del bucket di destinazione e il.
Replace (Sostituisci)IAM-role-ARN
con il ARN IAM ruolo che hai creato in precedenza. Salvare le modifiche.IAM-ruolo- ARN
-
Per aggiungere la configurazione di replica al bucket di origine, esegui il comando seguente:
$
aws s3api put-bucket-replication \ --replication-configuration file://replication
.json \ --bucketamzn-s3-demo-source-bucket
\ --profileacctA
-
-
Testa la tua configurazione di replica controllando la proprietà della replica nella console Amazon S3.
Accedi a AWS Management Console e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Aggiungere oggetti al bucket
di origine
. Verifica che il bucket di destinazione contenga le repliche degli oggetti e che la proprietà delle repliche sia passata a Account AWS quella proprietaria del bucket di destinazione.
Per un esempio di codice per aggiungere una configurazione di replica, vedereUsando il AWS SDKs. La configurazione della replica deve essere modificata di conseguenza. Per informazioni concettuali, consulta Modifica del proprietario della replica.