Para acessar os produtos e serviços do Google Cloud de maneira programática, use as APIs do Cloud. Essas APIs expõem uma interface REST REST simples. A maneira recomendada de acessar as APIs do Cloud é usar as bibliotecas de cliente do Cloud.
O Cloud Code facilita a adição de bibliotecas de cliente do Cloud às APIs e à linguagem do Cloud que você está usando no projeto. Na mesma visualização, é possível pesquisar amostras para cada API e incorporar amostras ao aplicativo com facilidade.
Como procurar APIs do Cloud
Para explorar todas as APIs do Google Cloud disponíveis:
Clique em
Cloud Code e expanda a seção APIs do Cloud.
As APIs do Cloud agrupam as APIs do Cloud por categoria.
Para ver os detalhes de uma API, clique no nome dela. Serão exibidos detalhes como nome, status, instruções de instalação das bibliotecas de cliente, a documentação e as amostras de código.
Como ativar APIs do Cloud
Para ativar as APIs do Cloud em um projeto usando a página de detalhes da API, siga estas etapas:
- Na página de detalhes da API do Cloud, escolha o projeto para ativar a API.
- Clique em Ativar API. Depois que a API for ativada, uma mensagem será exibida para confirmar a alteração.
Como adicionar bibliotecas de cliente em seu projeto
Além de explorar e ativar as APIs do Cloud usando o Cloud Code, também é possível adicionar uma biblioteca de cliente de linguagem específica em seu projeto.
Para instalar uma biblioteca de cliente, siga as instruções na página de detalhes da API da sua linguagem.
Como usar amostras de API
Você pode pesquisar e usar amostras de código para cada API no navegador de APIs.
Clique em
Cloud Code e expanda a seção APIs do Cloud.
Para abrir a visualização de detalhes, clique no nome de uma API.
Para ver exemplos de código da API, clique em Amostras de código.
Para filtrar a lista de amostras, digite o texto a ser pesquisado ou escolha uma linguagem de programação na lista Language.
Para ver uma amostra, clique no nome dela. Também há opções para copiar o exemplo para a área de transferência ou visualizá-lo no GitHub.
Como configurar a autenticação
Depois de ativar as APIs necessárias e adicionar as bibliotecas de cliente necessárias, configure o aplicativo para que ele seja autenticado. A configuração depende do seu tipo de desenvolvimento e da plataforma em que você está executando.
Depois de concluir as etapas de autenticação, seu aplicativo pode ser autenticado e está pronto para ser implantado.
Desenvolvimento local
Máquina local
Se você tiver feito login no Google Cloud no seu ambiente de desenvolvimento integrado, o Cloud Code definirá as Application Default Credentials (ADC) e você poderá pular esta etapa. Se você fez login no Google Cloud fora do seu ambiente de desenvolvimento integrado (por exemplo, usando a CLI gcloud), configure o ADC e permita que as bibliotecas de cliente do Google Cloud façam a autenticação usando o ADC executando:
gcloud auth login --update-adc
minikube
Se você tiver feito login no Google Cloud no seu ambiente de desenvolvimento integrado, o Cloud Code definirá as Application Default Credentials (ADC) e você poderá pular esta etapa. Se você fez login no Google Cloud fora do seu ambiente de desenvolvimento integrado (por exemplo, usando a CLI gcloud), configure o ADC e permita que as bibliotecas de cliente do Google Cloud façam a autenticação usando o ADC executando:
gcloud auth login --update-adc
- Inicie o minikube executando
minikube start --addons gcp-auth
. Esse comendo ativará o ADC nos pods. Para informações detalhadas sobre a autenticação do minikube com o Google Cloud, consulte a documentação do minikube gcp-auth.
Outros clusters do K8s locais
Se você tiver feito login no Google Cloud no seu ambiente de desenvolvimento integrado, o Cloud Code definirá as Application Default Credentials (ADC) e você poderá pular esta etapa. Se você fez login no Google Cloud fora do seu ambiente de desenvolvimento integrado (por exemplo, usando a CLI gcloud), configure o ADC e permita que as bibliotecas de cliente do Google Cloud façam a autenticação usando o ADC executando:
gcloud auth login --update-adc
- Para garantir que as bibliotecas de cliente do Google Cloud encontrem suas credenciais, ative o diretório
~/.config/gcloud
local nos pods do Kubernetes editando os manifestos de implantação. - Defina o ID do projeto do Google Cloud como uma variável de ambiente chamada
GOOGLE_CLOUD_PROJECT
.
Exemplo de configuração de pod do Kubernetes:
apiVersion: v1
kind: Pod
metadata:
name: my-app
labels:
name: my-app
spec:
containers:
- name: my-app
image: gcr.io/google-containers/busybox
ports:
- containerPort: 8080
env:
- name: GOOGLE_CLOUD_PROJECT
value: my-project-id
volumeMounts:
- mountPath: /root/.config/gcloud
name: gcloud-volume
volumes:
- name: gcloud-volume
hostPath:
path: /path/to/home/.config/gcloud
Cloud Run
Se você tiver feito login no Google Cloud no seu ambiente de desenvolvimento integrado, o Cloud Code definirá as Application Default Credentials (ADC) e você poderá pular esta etapa. Se você fez login no Google Cloud fora do seu ambiente de desenvolvimento integrado (por exemplo, usando a CLI gcloud), configure o ADC e permita que as bibliotecas de cliente do Google Cloud façam a autenticação usando o ADC executando:
gcloud auth login --update-adc
Desenvolvimento remoto
GKE
Dependendo do escopo do projeto, é possível escolher como autenticar os serviços do Google Cloud no GKE:
- (Somente desenvolvimento)
- Crie um cluster do GKE com as seguintes configurações:
- Verifique se você está usando a conta de serviço que o GKE usa por padrão, a conta de serviço padrão do Compute Engine e se os escopos de acesso estão definidos em Permitir acesso total a todas as APIs do Cloud. As duas configurações podem ser acessadas na seção Pools de nós > Segurança. Como a conta de serviço do Compute Engine é compartilhada por todas as cargas de trabalho implantadas no nó, esse método provisiona mais de permissões e só pode ser usado para desenvolvimento.
- Verifique se a Identidade da carga de trabalho não está ativada no cluster (na seção Cluster > Segurança).
- Atribua os papéis necessários à conta de serviço.
- Se você estiver tentando acessar um secret, siga as etapas específicas do Secret Manager para configurar os papéis necessários na sua conta de serviço.
- Se você estiver usando a conta de serviço padrão do Compute Engine, os papéis de IAM corretos talvez já estejam aplicados.
- Para uma lista de tipos de papéis do IAM e papéis predefinidos que podem ser concedidos a identidades, consulte o guia Noções básicas sobre papéis. Para ver as etapas de concessão de papéis, consulte Como conceder, alterar e revogar acesso a recursos.
- Crie um cluster do GKE com as seguintes configurações:
- (Recomendado para produção)
- Configure seu cluster e aplicativo do GKE com a Identidade da carga de trabalho para autenticar os serviços do Google Cloud no GKE. Isso associa sua conta de serviço do Kubernetes à sua conta de serviço do Google.
- Configure a implantação do Kubernetes para referenciar a conta de
serviço do Kubernetes definindo o campo
.spec.serviceAccountName
no arquivo YAML de implantação do Kubernetes. Se você estiver trabalhando em um aplicativo criado a partir de um modelo do Cloud Code, esse arquivo estará localizado na pasta kubernetes-manifests. - Se o serviço do Google Cloud que você está tentando acessar exigir papéis adicionais, conceda-os para a conta de serviço do Google que você está usando para desenvolver seu aplicativo:
- Se você estiver tentando acessar um secret, siga estas etapas específicas do Gerenciador de secrets para configurar os papéis necessários na sua conta de serviço.
- Para ver a lista de tipos de papel do IAM e papéis predefinidos que você pode conceder a identidades, consulte o Guia Noções básicas sobre papéis. Para ver as etapas de concessão de papéis, consulte Como conceder, alterar e revogar o acesso a recursos.
Cloud Run
- Para criar uma nova conta de serviço exclusiva para implantar seu aplicativo Cloud Run, navegue até a página "Contas de serviço" e selecione o projeto em que o secret está armazenado.
- Clique em Criar conta de serviço.
- Na caixa de diálogo Criar conta de serviço, forneça um nome descritivo para a conta.
- Altere o ID da conta de serviço para um valor reconhecível exclusivo e clique em Criar.
- Se o serviço do Google Cloud que você está tentando acessar exigir papéis adicionais, conceda-os, clique em Continuar e, em seguida, clique em Concluído.
- Para adicionar a conta de serviço à configuração de implantação, faça o seguinte:
- Usando a barra de status do Cloud Code, escolha o comando Cloud Run: implantar.
- Na IU de implantação do Cloud Run, em Configurações de revisão, no campo Conta de serviço, especifique sua conta de serviço.
Cloud Run
Dependendo do escopo do projeto, é possível escolher como autenticar os serviços do Google Cloud no GKE:
- (Somente desenvolvimento)
- Crie um cluster do GKE
com as seguintes configurações:
- Verifique se você está usando a conta de serviço que o GKE usa por padrão e se a conta de serviço padrão do Compute Engine e se os escopos de acesso estão definidos em Permitir acesso total a todas as APIs do Cloud (as duas configurações acessíveis na seção Pools de nós > Segurança). Como a conta de serviço do Compute Engine é compartilhada por todas as cargas de trabalho implantadas no nó, esse método superprovisiona permissões e só deve ser usado para desenvolvimento.
- Verifique se a Identidade da carga de trabalho não está ativada no cluster (na seção Cluster > Segurança).
- Atribua os papéis necessários à conta de serviço.
- Se você estiver tentando acessar um secret, siga estas etapas específicas do Gerenciador de secrets para configurar os papéis necessários na sua conta de serviço.
- Se você estiver usando a conta de serviço padrão do Compute Engine, os papéis de IAM corretos talvez já estejam aplicados.
- Para ver a lista de tipos de papel do IAM e papéis predefinidos que você pode conceder a identidades, consulte o Guia Noções básicas sobre papéis. Para ver as etapas de concessão de papéis, consulte Como conceder, alterar e revogar o acesso a recursos.
- Crie um cluster do GKE
com as seguintes configurações:
- (Recomendado para produção)
- Configure seu cluster e aplicativo do GKE com a Identidade da carga de trabalho para autenticar os serviços do Google Cloud no GKE. Isso associa sua conta de serviço do Kubernetes à sua conta de serviço do Google.
- Para adicionar a conta de serviço à configuração de implantação, faça o seguinte:
- Usando a barra de status do Cloud Code, escolha o comando Cloud Run: implantar.
- Na IU de implantação do Cloud Run, em Configurações de revisão, no campo Conta de serviço, especifique sua conta de serviço.
- Se o serviço do Google Cloud que você está tentando acessar exigir papéis
adicionais, conceda-os para a conta de serviço do Google que você está usando para desenvolver
seu app:
- Se você estiver tentando acessar um secret, siga estas etapas específicas do Gerenciador de secrets para configurar os papéis necessários na sua conta de serviço.
- Para ver a lista de tipos de papel do IAM e papéis predefinidos que você pode conceder a identidades, consulte o Guia Noções básicas sobre papéis. Para ver as etapas de concessão de papéis, consulte Como conceder, alterar e revogar o acesso a recursos.
Desenvolvimento remoto com permissões do Gerenciador de secrets ativadas
Se você estiver desenvolvendo remotamente, usando uma conta de serviço para autenticação, e seu aplicativo usar secrets, conclua mais algumas etapas além das instruções de desenvolvimento remoto. Essas etapas atribuem à sua conta de serviço do Google o papel necessário para acessar um determinado secret do Gerenciador de secrets:
Clique em
Cloud Code e expanda a seção Gerenciador de secrets.
Clique com o botão direito do mouse no secret e selecione Editar permissões no Console do Cloud. Isso abre a página de configuração do Gerenciador de secrets para aquele secret no navegador da Web.
No Console do Google Cloud, clique em Permissões e em Adicionar.
No campo Novos principais, digite o nome da sua conta de serviço.
No campo Selecionar papel, escolha o papel Acessor de secrets do Gerenciador de secrets.
Clique em Save.
Sua conta de serviço agora tem permissão para acessar esse secret específico.