Impostazione di Object Ownership su un bucket esistente - Amazon Simple Storage Service

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

Impostazione di Object Ownership su un bucket esistente

È possibile configurare S3 Object Ownership su un bucket S3 esistente. Per applicare Object Ownership quando si crea un bucket, consulta Impostazione di Object Ownership quando si crea un bucket.

S3 Object Ownership è un'impostazione a livello di bucket di Amazon S3 che puoi utilizzare per disabilitare gli elenchi di controllo degli accessi ACLs () e assumere la proprietà di ogni oggetto nel bucket, semplificando la gestione degli accessi per i dati archiviati in Amazon S3. Per impostazione predefinita, S3 Object Ownership è impostato sull'impostazione imposta dal proprietario del bucket e viene disabilitato per i nuovi bucket. ACLs Se ACLs disabilitata, il proprietario del bucket possiede ogni oggetto nel bucket e gestisce l'accesso ai dati esclusivamente utilizzando le politiche di gestione degli accessi. Ti consigliamo di mantenerlo ACLs disabilitato, tranne in circostanze insolite in cui devi controllare l'accesso per ogni oggetto singolarmente.

Object Ownership dispone di tre impostazioni che puoi utilizzare per controllare la proprietà degli oggetti caricati nel tuo bucket e per disabilitarli o ACLs abilitarli:

ACLs disabilitato
  • Proprietario del bucket applicato (impostazione predefinita): ACLs sono disabilitati e il proprietario del bucket possiede automaticamente e ha il pieno controllo su ogni oggetto nel bucket. ACLs non influiscono più sulle autorizzazioni per i dati nel bucket S3. Il bucket utilizza le policy per definire il controllo degli accessi.

ACLs enabled
  • Proprietario del bucket preferito - Il proprietario del bucket possiede e ha il pieno controllo sui nuovi oggetti che altri account scrivono sul bucket con l'ACL bucket-owner-full-control predefinita.

  • Object writer: chi carica un oggetto possiede l'oggetto, ne ha il pieno controllo e può concedere ad altri utenti l'accesso ad esso tramite. Account AWS ACLs

Prerequisiti: prima di applicare la disattivazione dell'impostazione imposta dal proprietario del bucket ACLs, è necessario migrare le autorizzazioni ACL del bucket alle policy del bucket e ripristinare il bucket sull'ACL privato predefinito. ACLs Ti consigliamo inoltre di migrare le autorizzazioni ACL degli oggetti alle policy dei bucket e di modificare le politiche dei bucket che richiedono un controllo completo diverso dal proprietario del bucket. ACLs ACLs Per ulteriori informazioni, consulta Prerequisiti per la disabilitazione ACLs.

Autorizzazioni: Per utilizzare questa operazione, è necessario disporre dell'autorizzazione s3:PutBucketOwnershipControls. Per ulteriori informazioni sulle autorizzazioni di Amazon S3, consulta Azioni, risorse e chiavi di condizione per Amazon S3 in Riferimento alle autorizzazioni di servizio.

Per ulteriori informazioni sulle autorizzazioni alle operazioni API S3 per tipi di risorse S3, consulta Autorizzazioni necessarie per le operazioni API di Amazon S3.

  1. Accedi a AWS Management Console e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/

  2. Nell'elenco Bucket scegliere il nome del bucket al quale applicare un'impostazione S3 Object Ownership.

  3. Scegli la scheda Autorizzazioni.

  4. Alla voce Proprietà Oggetto scegli Modifica.

  5. In Object Ownership, per disabilitare o abilitare ACLs e controllare la proprietà degli oggetti caricati nel tuo bucket, scegli una delle seguenti impostazioni:

    ACLs disabilitato
    • proprietario del bucket applicato: ACLs sono disabilitati e il proprietario del bucket possiede automaticamente e ha il pieno controllo su ogni oggetto nel bucket. ACLs non influiscono più sulle autorizzazioni per i dati nel bucket S3. Il bucket utilizza le policy per definire il controllo degli accessi.

      Per richiedere che tutti i nuovi bucket vengano creati con l'opzione ACLs disabilitata utilizzando IAM o AWS Organizations le policy, consulta. Disabilitazione ACLs per tutti i nuovi bucket (il proprietario del bucket è stato imposto)

    ACLs enabled
    • Proprietario del bucket scelto – Il proprietario del bucket possiede e ha il pieno controllo sui nuovi oggetti che altri account scrivono nel bucket con l'ACL predefinita bucket-owner-full-control.

      Se applichi l'impostazione del proprietario del bucket preferito per richiedere che tutti i caricamenti di Amazon S3 includano l'ACL predefinita bucket-owner-full-control, puoi aggiungere una policy del bucket che consenta solo il caricamento di oggetti che utilizzano questo ACL.

    • Object writer: chi carica un oggetto possiede l'oggetto, ne ha il pieno controllo e può consentire ad altri utenti di accedervi tramite. Account AWS ACLs

  6. Seleziona Salva.

Per applicare un'impostazione Object Ownership per un bucket esistente, utilizzare il comando put-bucket-ownership-controls con il parametro --ownership-controls. I valori validi per la proprietà sonoBucketOwnerEnforced, BucketOwnerPreferred o ObjectWriter.

In questo esempio viene applicata l'impostazione Proprietario del bucket applicato per un bucket esistente utilizzando la AWS CLI:

aws s3api put-bucket-ownership-controls --bucket amzn-s3-demo-bucket --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerEnforced}]"

Per informazioni su put-bucket-ownership-controls, consulta .put-bucket-ownership-controls nella Guida per l'utente di AWS Command Line Interface .

In questo esempio viene eseguita l'impostazione BucketOwnerEnforced per Object Ownership su un bucket esistente utilizzando la AWS SDK for Java:

// Build the ObjectOwnership for BucketOwnerEnforced OwnershipControlsRule rule = OwnershipControlsRule.builder() .objectOwnership(ObjectOwnership.BucketOwnerEnforced) .build(); OwnershipControls ownershipControls = OwnershipControls.builder() .rules(rule) .build() // Build the PutBucketOwnershipControlsRequest PutBucketOwnershipControlsRequest putBucketOwnershipControlsRequest = PutBucketOwnershipControlsRequest.builder() .bucket(BUCKET_NAME) .ownershipControls(ownershipControls) .build(); // Send the request to Amazon S3 s3client.putBucketOwnershipControls(putBucketOwnershipControlsRequest);

Da utilizzare AWS CloudFormation per applicare un'impostazione di proprietà dell'oggetto a un bucket esistente, vedere AWS::S3::Bucket OwnershipControls nella Guida per l'utente di AWS CloudFormation .

Per utilizzare REST API per applicare un'impostazione Object Ownership a un bucket S3 esistente, utilizzare PutBucketOwnershipControls. Per ulteriori informazioni, consulta PutBucketOwnershipControlsnel riferimento all'API di riferimento di Amazon Simple Storage Service.

Fasi successive: dopo aver eseguito le impostazioni Proprietario del bucket applicato o Proprietario del bucket preferito per Proprietà dell'oggetto, è possibile compiere i seguenti passaggi:

  • Bucket owner applicato: richiedi che tutti i nuovi bucket vengano creati con la ACLs disattivazione utilizzando una policy IAM o Organizations.

  • Proprietario del bucket preferito – Aggiungi una policy di bucket S3 per richiedere l'ACL predefinita bucket-owner-full-control per tutti gli oggetti caricati nel tuo bucket.