Por padrão, somente proprietários e editores de projetos podem criar, atualizar, excluir ou invocar serviços, e somente proprietários de projetos e administradores do Cloud Run podem modificar as políticas de gerenciamento de identidade e acesso (IAM, na sigla em inglês), como tornar um serviço público. Saiba mais sobre os papéis do IAM do Cloud Run.
Para conceder a outros usuários ou grupos a capacidade de executar essas ações, use o IAM para conceder papéis a diferentes membros.
Como controlar o acesso em um serviço individual
Se você quiser controlar o acesso por serviço, será possível usar o IAM por serviço.
Como tornar um serviço público
IU do Console
Acesse o Console do Google Cloud:
Selecione o serviço que você quer tornar público.
Clique em Mostrar painel de informações no canto superior direito para mostrar a guia Permissões.
No campo Adicionar membros,
allUsers
Selecione o papel Chamador do Cloud Run no menu suspenso Selecionar um papel.
Clique em Add.
gcloud
É possível tornar um serviço acessível publicamente adicionando o tipo de membro allUsers
especial a um serviço e concedendo a ele o papel roles/run.invoker
:
gcloud run services add-iam-policy-binding [SERVICE_NAME] \ --member="allUsers" \ --role="roles/run.invoker"
Além disso, ao implantar o serviço com o comando gcloud run deploy
, é possível especificar se o serviço será disponibilizado publicamente:
gcloud run deploy [SERVICE_NAME] ... --allow-unauthenticated
Ao criar um novo serviço, você será perguntado se quer "permitir acesso não autenticado". Responder "sim" realizará as ações acima para disponibilizar o serviço publicamente. Responder "não" deixará o serviço particular.
Compartilhamento restrito de domínio
Se o projeto estiver sujeito à restrição de compartilhamento restrito de domínio em uma política da organização, não será possível criar serviços públicos. Recomendamos que você crie todos os projetos em uma pasta que não esteja sujeita a essa restrição e remova-a em projetos atuais restaurando a restrição padrão no projeto.
Como adicionar usuários
IU do Console
Acesse o Console do Google Cloud:
Selecione o serviço ao qual você quer adicionar usuários.
Clique em Mostrar painel de informações no canto superior direito para mostrar a guia Permissões.
No campo Adicionar membros, insira uma ou mais identidades que precisam de acesso ao seu serviço.
Escolha um ou mais papéis no menu suspenso Selecionar um papel. Os papéis selecionados são exibidos no painel com uma breve descrição das permissões que eles concedem.
Clique em Add.
gcloud
Use o comando gcloud run services add-iam-policy-binding
:
gcloud run services add-iam-policy-binding SERVICE_NAME \ --member=MEMBER_TYPE \ --role=ROLE
em que SERVICE_NAME
é o nome do serviço, MEMBER_TYPE
é o tipo de membro (por exemplo, user:email@domain.com
) e ROLE
é o papel.
Veja uma lista de valores aceitáveis para MEMBER_TYPE
na
página de conceitos do IAM.
Veja uma lista de valores aceitáveis para ROLE
em
Papéis do IAM do Cloud Run.
Como remover usuários
IU do Console
Acesse o Console do Google Cloud:
Selecione o serviço do qual você quer remover usuários.
Clique em Mostrar painel de informações no canto superior direito para mostrar a guia Permissões.
Procure o usuário que você quer remover ou expanda um papel do usuário.
Clique na lixeira Excluir ao lado do tipo de membro dentro do papel para remover o papel do membro.
gcloud
Use o comando gcloud run services remove-iam-policy-binding
:
gcloud run services remove-iam-policy-binding SERVICE_NAME \ --member=MEMBER_TYPE \ --role=ROLE
em que SERVICE_NAME
é o nome do serviço, MEMBER_TYPE
é o tipo de membro (por exemplo, user:email@domain.com
) e ROLE
é o papel.
Veja uma lista de valores aceitáveis para MEMBER_TYPE
na
página de conceitos do IAM.
Veja uma lista de valores aceitáveis para ROLE
em
Papéis do IAM do Cloud Run.
Adição ou remoção de usuários em massa
IU do Console
Acesse o Console do Google Cloud:
Selecione o serviço em que você quer adicionar ou remover usuários.
Clique em Mostrar painel de informações no canto superior direito para mostrar a guia Permissões.
Se você quer adicionar usuários, siga estas etapas:
No campo Adicionar membros, insira várias identidades que precisam de acesso ao seu serviço.
Escolha um ou mais papéis no menu suspenso Selecionar um papel. Os papéis selecionados são exibidos no painel com uma breve descrição das permissões que eles concedem.
Clique em Adicionar.
Se você quiser remover usuários:
Procure o usuário que você quer remover ou expanda um papel do usuário.
Clique na lixeira Excluir ao lado do tipo de membro dentro do papel para remover o papel do membro.
gcloud
Crie uma política do IAM:
cat <<EOF > policy.json { "bindings": [ { "role": ROLE, "members": [ MEMBER_TYPE ] } ] } EOF
Use o comando gcloud run services set-iam-policy
:
gcloud run services set-iam-policy SERVICE_NAME policy.json
Veja uma lista de valores aceitáveis para MEMBER_TYPE
na
página de conceitos do IAM.
Veja uma lista de valores aceitáveis para ROLE
em
Papéis do IAM do Cloud Run.
Como ver usuários
IU do Console
Acesse o Console do Google Cloud:
Selecione o serviço em que você quer visualizar usuários e papéis.
Clique em Mostrar painel de informações no canto superior direito para mostrar a guia Permissões.
Todos os usuários serão exibidos, no grupo do papel concedido.
gcloud
Use o comando gcloud run services get-iam-policy
:
gcloud run services get-iam-policy SERVICE_NAME
Como controlar o acesso em todos os serviços em um projeto
Se você quer conceder papéis aos membros em todos os serviços em um projeto, use o IAM no nível do projeto.
IU do Console
Acesse o Console do Google Cloud:
Encontre o usuário para quem você quer conceder um papel para todo o projeto.
Clique no Lápis de edição no lado direito da linha do usuário.
Clique em Adicionar outro papel e escolha aquele que você quer.
Clique em "Salvar".
gcloud
Use o comando gcloud projects add-iam-policy-binding
:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=MEMBER_TYPE \ --role=ROLE
em que MEMBER_TYPE
é o tipo de membro (por exemplo, user:email@domain.com
) e ROLE
é o papel (por exemplo, roles/run.admin
).
Próximas etapas
Saiba como autenticar desenvolvedores, serviços e usuários com segurança para os serviços que você acabou de proteger.