Nesta página, você verá as práticas recomendadas ao usar o Identity and Access Management (IAM) e as Listas de controle de acesso (ACLs) para gerenciar o acesso a dados.
As políticas e as ACLs do IAM exigem gerenciamento ativo para serem eficazes. Antes de criar um bucket, objeto ou pasta gerenciada acessível a outros usuários, saiba com quem você quer compartilhar o recurso e quais papéis serão atribuídos a essas pessoas. Com o tempo, as mudanças no gerenciamento de projetos, nos padrões de uso e na propriedade organizacional podem exigir que você modifique as configurações de IAM ou ACL em buckets e projetos, especialmente se gerenciar o Cloud Storage em uma organização de grande porte ou para um grande grupo de usuários. Ao avaliar e planejar as configurações de controle de acesso, lembre-se destas práticas recomendadas:
- Use o princípio de privilégio mínimo ao conceder acesso a buckets, objetos ou pastas gerenciadas. - O princípio de privilégio mínimo é uma diretriz de segurança para conceder acesso a seus recursos. Com base nesse princípio, conceda o privilégio mínimo necessário para que um usuário execute a tarefa atribuída. Por exemplo, se você quiser compartilhar arquivos, conceda a pessoa o papel - storage.objectViewerdo IAM ou a permissão- READERdas ACLs, e não o papel de- storage.admindo IAM ou a permissão- OWNERdas ACLs.
- Evite conceder papéis do IAM com a permissão - setIamPolicyou conceder a permissão- OWNERda ACL a pessoas que você não conhece.- Quando você dá a permissão - setIamPolicydo IAM ou- OWNERdas ACLs, permite que um usuário altere permissões e assuma o controle dos dados. Use papéis com essas permissões somente quando quiser delegar o controle administrativo sobre objetos, buckets e pastas gerenciadas.
- Tenha cuidado em como você concede permissões a usuários anônimos. - Os tipos de Principais - allUserse- allAuthenticatedUserssó devem ser usados se for admissível que qualquer pessoa na Internet possa ler e analisar seus dados. Embora esses escopos sejam úteis para alguns aplicativos e cenários, em geral, não é uma boa ideia conceder a todos os usuários determinadas permissões, como- setIamPolicy,- update,- createou- deletedo IAM ou- OWNERdas ACLs.
- Delegue o controle administrativo de seus buckets. - Verifique se os buckets e recursos ainda podem ser gerenciados por outros membros da equipe caso um indivíduo com acesso administrativo saia do grupo. - Para evitar que os recursos se tornem inacessíveis, você tem as seguintes opções: - Atribua o papel do IAM Administrador do Storage do projeto a um grupo em vez de a um indivíduo. 
- Atribua o papel do IAM Administrador do Storage do projeto a pelo menos dois indivíduos. 
- Conceda a permissão - OWNERdas ACLs do bucket a pelo menos dois indivíduos
 
- Esteja ciente do comportamento interoperável do Cloud Storage. - A API XML permite acesso interoperável com outros serviços de armazenamento, como o Amazon S3. Nesse caso, o identificador de assinaturas determina a sintaxe da ACL. Por exemplo, se a ferramenta ou biblioteca que você estiver usando solicitar que o Cloud Storage recupere ACLs e essa solicitação usar o identificador de assinatura de outro provedor de armazenamento, o Cloud Storage retornará um documento XML que usa a sintaxe da ACL do provedor de armazenamento correspondente. Se a ferramenta ou biblioteca que você estiver usando solicitar que o Cloud Storage aplique ACLs e a solicitação usar o identificador de assinatura de outro provedor de armazenamento, o Cloud Storage aguardará o recebimento de um documento XML que usa a sintaxe da ACL do provedor de armazenamento correspondente. - Para mais informações sobre como usar a API XML para interoperabilidade com o Amazon S3, consulte Migração simples do Amazon S3 para o Cloud Storage. 
A seguir
- Saiba como usar as políticas do IAM com o Cloud Storage.
- Saiba como usar ACLs com o Cloud Storage.
- Revise a tabela de referência do IAM para Cloud Storage.