Trabalhar com o campo ACL de objetos
Um relatório do Inventário Amazon S3 contém uma lista dos objetos no bucket de origem do S3 e os metadados de cada objeto. O campo lista de controle de acesso (ACL) de objetos é um campo de metadados que está disponível no Inventário Amazon S3. Especificamente, o campo ACL de objetos contém a lista de controle de acesso (ACL) para cada objeto. A ACL de um objeto define quais Contas da AWS ou grupos recebem acesso a esse objeto e ao tipo de acesso concedido. Para ter mais informações, consulte Visão geral da lista de controle de acesso (ACL) e Lista do Amazon S3 Inventory.
O campo ACL de objetos nos relatórios do Inventário Amazon S3 é definido no formato JSON. Os dados JSON incluem os seguintes campos:
-
version
: a versão do formato do campo ACL de objetos nos relatórios de inventário. Está no formato de datayyyy-mm-dd
. -
status
: os valores possíveis sãoAVAILABLE
ouUNAVAILABLE
para indicar se uma ACL de objetos está disponível para um objeto. Quando o status da ACL de objetos éUNAVAILABLE
, o valor do campo Proprietário do objeto no relatório de inventário também éUNAVAILABLE
. -
grants
: pares de concessão e permissão que listam o status da permissão de cada beneficiário da ACL de objetos. Os valores disponíveis para um beneficiário sãoCanonicalUser
eGroup
. Para obter mais informações sobre os beneficiários, consulte Beneficiários em listas de controle de acesso.Para um beneficiário com o tipo
Group
, um par de concessão e permissão inclui os seguintes atributos:-
uri
: um grupo predefinido do Amazon S3. -
permission
: as permissões de ACL concedidas ao objeto. Para obter mais informações, consulte Permissões de ACL em um objeto. -
type
: o tipoGroup
, o que indica que o beneficiário é um grupo.
Para um beneficiário com o tipo
CanonicalUser
, um par de concessão e permissão inclui os seguintes atributos:-
canonicalId
: uma forma ofuscada do ID da Conta da AWS. O ID de usuário canônico de uma Conta da AWS é específico dessa conta. Você pode recuperar o ID de usuário canônico. Para obter mais informações, consulte Find the canonical user ID for your Conta da AWS no Guia de referência de gerenciamento de contas da AWS.nota
Se um beneficiário em uma ACL for o endereço de e-mail de uma Conta da AWS, o Inventário S3 usa o
canonicalId
dessa Conta da AWS e o tipoCanonicalUser
para especificar esse beneficiário. Para obter mais informações, consulte Beneficiários em listas de controle de acesso. -
permission
: as permissões de ACL concedidas ao objeto. Para obter mais informações, consulte Permissões de ACL em um objeto. -
type
: o tipoCanonicalUser
, o que indica que o beneficiário é uma Conta da AWS.
-
O exemplo a seguir mostra os valores possíveis para o campo ACL de objetos no formato JSON:
{ "version": "2022-11-10", "status": "AVAILABLE", "grants": [{ "uri": "http://acs.amazonaws.com/groups/global/AllUsers", "permission": "READ", "type": "Group" }, { "canonicalId": "example-canonical-id", "permission": "FULL_CONTROL", "type": "CanonicalUser" }] }
nota
O campo ACL de objetos é definido no formato JSON. Um relatório de inventário exibe o valor do campo ACL de objetos como uma string codificada em base64.
Por exemplo, suponha que você tenha o seguinte campo ACL de objetos no formato JSON:
{ "version": "2022-11-10", "status": "AVAILABLE", "grants": [{ "canonicalId": "example-canonical-user-ID", "type": "CanonicalUser", "permission": "READ" }] }
O campo ACL de objetos é codificado e mostrado como a seguinte string codificada em base64:
eyJ2ZXJzaW9uIjoiMjAyMi0xMS0xMCIsInN0YXR1cyI6IkFWQUlMQUJMRSIsImdyYW50cyI6W3siY2Fub25pY2FsSWQiOiJleGFtcGxlLWNhbm9uaWNhbC11c2VyLUlEIiwidHlwZSI6IkNhbm9uaWNhbFVzZXIiLCJwZXJtaXNzaW9uIjoiUkVBRCJ9XX0=
Para obter o valor decodificado em JSON para o campo ACL de objetos, você pode consultar esse campo no Amazon Athena. Para obter exemplos de consultas, consulte Consulta do Amazon S3 Inventory com o Amazon Athena.