Quando se trata de implantar serviços em Cloud Run, a segurança e o controle de acessos são fundamentais para evitar problemas de permissão e prevenir danos ao sistema. No entanto, muitos guias e vídeos se concentram apenas em executar um serviço “Hello World” em Cloud Run, negligenciando a segurança e os privilégios de acesso em um ambiente de produção.

Existem dois tipos de privilégios que devem ser considerados: quem pode desencadear o serviço Cloud Run e o que o serviço Cloud Run pode fazer quando é executado. Embora muitos recursos abordem o primeiro tipo, o segundo tipo é frequentemente ignorado. É importante lembrar que as configurações padrão podem ser problemáticas, pois a conta padrão tem permissões amplas, incluindo a capacidade de criar ou destruir máquinas virtuais e bancos de dados.

É crucial definir os privilégios de acesso corretos para evitar danos. Isso inclui analisar as APIs do Google Cloud utilizadas pelo serviço e conceder acesso apenas às APIs específicas necessárias. Além disso, é recomendável criar uma conta de serviço com permissões mínimas necessárias para realizar sua função pretendida, seguindo o princípio do menor privilégio.

Para criar uma conta de serviço e um papel customizado em Cloud Console, é necessário seguir os seguintes passos:

1. Crie um papel customizado: selecione “Criar Papel Customizado” e escolha o estado de lançamento (disponibilidade geral ou estado de disponibilidade). Adicione permissões filtrando por permissões do Firestore e selecionando as permissões desejadas (por exemplo, leitura e escrita, mas não exclusão).
2. Conceda o papel à conta de serviço: vá para a seção “Gerenciamento de Identidade e Acesso” e clique em “IAM”, concedendo o papel customizado à conta de serviço.

Além disso, é importante seguir as melhores práticas para nomear papéis e contas de serviço em larga escala, referenciando o Guia de Segurança em Nuvem. Para criar vários papéis e contas de serviço, é recomendável utilizar ferramentas de infraestrutura como código, como o Terraform, que permite criar recursos múltiplos de forma mais rápida e eficiente utilizando loops e iteração. Os módulos do Terraform também podem ser usados para criar serviços consistentes e conformes em toda a organização.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *