Configuração da API Cloud Billing Budget

Neste guia, apresentamos todas as etapas de configuração necessárias para começar a usar a API Cloud Billing Budget.

Antes de começar

Antes de ler este guia, faça o seguinte:

  1. Leia a Visão geral da API Cloud Billing Budget.
  2. Leia os Pré-requisitos da API Cloud Billing Budget.

Sobre o Console do Cloud

O Console do Google Cloud (acesse a documentação, abra o console) é uma IU da Web usada para provisionar, configurar, gerenciar e monitorar sistemas que usam os produtos do Google Cloud. Você usa o Console do Cloud para configurar e gerenciar recursos do Google Cloud e do Faturamento do Cloud.

1. Selecionar ou criar um projeto

Para usar os serviços fornecidos pelo Google Cloud, crie um projeto. Um projeto organiza todos os seus recursos do Google Cloud. Ele consiste em um conjunto de colaboradores, APIs ativadas (e outros recursos), ferramentas de monitoramento, informações de faturamento e controles de autenticação e acesso. Crie um ou vários projetos e use-os para organizar os recursos do Google Cloud em uma hierarquia de recursos. Para mais informações sobre projetos, consulte a documentação do Resource Manager.

Recomendação: configure um único projeto separado do Google Cloud para atender a todas as suas necessidades de administração de faturamento, incluindo a API Cloud Billing Budget. Também é possível usar seu projeto do Google Cloud de administração de faturamento para elementos como acesso à API Cloud Billing Account, dados exportados do Faturamento do Cloud, canais do Pub/Sub para notificações programáticas de orçamento etc.

No Console do Cloud, na página de seletor de projetos, selecione ou crie um projeto do Cloud.

Acessar a página do seletor de projetos

2. Ativar o faturamento

Ative o faturamento no projeto que você usa para chamar a API Cloud Billing Budget. Se você seguiu a recomendação na seção do projeto, esse é seu projeto do Google Cloud de administração de faturamento.

Uma Conta de faturamento do Cloud é usada para definir quem paga por um determinado conjunto de recursos do Google Cloud. Os recursos, como APIs ativadas, são organizados em projetos. É possível vincular uma Conta de faturamento do Cloud a um ou mais projetos. O uso do projeto é cobrado na conta de faturamento vinculada. Na maioria dos casos, você configura o faturamento ao criar um projeto. Para mais informações, consulte a documentação de faturamento.

Você configura os orçamentos do Faturamento do Cloud para monitorar uma Conta de faturamento do Cloud. Essa conta que você monitora pode ser a mesma vinculada ao projeto usado para chamar a API Cloud Billing Budget. O uso dessa API é gratuito para clientes do Google Cloud. Se você configurar as notificações programáticas de orçamento, será cobrado conforme os preços padrão do Pub/Sub.

Verifique se a cobrança está ativada para o seu projeto do Google Cloud. Saiba como confirmar se a cobrança está ativada para o seu projeto.

3. Ativar a API

Ative a API Cloud Billing Budget no projeto que você usa para chamá-la. Se você seguiu a recomendação na seção do projeto, esse é seu projeto do Google Cloud de administração de faturamento.

Para mais informações sobre como ativar APIs, consulte a documentação do Service Usage.

Ative a Cloud Billing Budget API.

Ative a API

4. Configurar a autenticação

Se você planeja usar a API Cloud Billing Budget, é necessário configurar a autenticação. Qualquer aplicativo cliente que usa a API precisa ser autenticado e receber acesso aos recursos solicitados. Nesta seção, você verá conceitos importantes de autenticação e as etapas para configurá-la. Para mais informações, consulte a visão geral da autenticação do GCP.

Sobre contas de serviço

Há várias opções de autenticação, mas recomendamos usar as contas de serviço para autenticação e controle de acesso. Uma conta de serviço fornece credenciais de aplicativos, e não de usuários finais.

As contas de serviço pertencem aos projetos, e é possível criar muitas em um projeto. Para mais informações, consulte Contas de serviço.

Sobre os papéis

Quando uma identidade (a conta de serviço) chama uma API, o Google Cloud exige que a identidade tenha as permissões adequadas. Para conceder permissões, você atribui papéis a uma conta de serviço. Para mais informações, consulte a documentação do Cloud Identity and Access Management.

Para usar todos os métodos da API Cloud Billing Budget, você precisará adicionar a conta de serviço como um membro a cada Conta de faturamento do Cloud em que você quer usar a API Cloud Billing Budget para gerenciar orçamentos de modo programático e atribuir os papéis adequados à conta de serviço.

Se você planeja configurar um tópico do Pub/Sub para notificações programáticas de orçamento, também precisa adicionar a conta de serviço como um membro do projeto ao local onde está o tópico do Pub/Sub e atribuir o papel de administrador de segurança do Cloud IAM à conta de serviço. Esse papel é necessário porque fornece à conta de serviço permissão para conceder o papel de Editor do Pub/Sub no tópico para permitir que o Faturamento do Cloud publique mensagens nele.

Para mais informações sobre os papéis específicos das APIs Cloud Billing, consulte o documento de controle de acesso das APIs Cloud Billing.

Sobre as chaves da conta de serviço

As contas de serviço estão associadas a um ou mais pares de chaves públicas/privadas. Ao criar um novo par de chaves, você faz o download da chave privada. Ela é usada para gerar credenciais ao chamar a API. Você é responsável pela segurança da chave privada e outras operações de gerenciamento, como a rotação de chaves.

A. Criar uma conta de serviço e fazer o download do arquivo de chave privada

A conta de serviço precisa ser criada no mesmo projeto em que você registrou a API Cloud Billing Budget. Se você seguiu a recomendação na seção do projeto, esse é seu projeto do Google Cloud de administração de faturamento.

  1. No Console do Cloud, acesse a página Criar chave da conta de serviço.

    Acessar página "Criar chave da conta de serviço"
  2. Na lista Conta de serviço, selecione Nova conta de serviço.
  3. No campo Nome da conta de serviço, insira um nome.
  4. Não selecione um valor na lista Papel. Essa conta de serviço não gerenciará recursos do projeto. Em uma etapa posterior, você concederá à conta de serviço as permissões necessárias para gerenciar os orçamentos da sua Conta de faturamento do Cloud.
  5. Clique em Criar Uma observação aparecerá informando que essa conta de serviço não tem papel.
  6. Clique em Criar sem papel. O download de um arquivo JSON com a chave será feito no computador.

B. Conceder permissões à sua conta de serviço para usar a API Cloud Billing Budget

Conceda à sua conta de serviço os papéis do Faturamento do Cloud e do Cloud IAM para atribuir as permissões necessárias para usar todos os métodos da API Cloud Billing Budget em todos os orçamentos na sua Conta de faturamento do Cloud.

  1. Encontre o endereço de e-mail da sua conta de serviço no arquivo JSON que você acabou de salvar com a chave client_email. O e-mail terá esta aparência: service-account-name@project-id.iam.gserviceaccount.com.
  2. No Console do Cloud, navegue até a página de gerenciamento da conta de faturamento e siga estas instruções para atualizar as permissões de faturamento da conta de serviço.
  3. Opcional: se você planeja configurar os orçamentos para usar as notificações programáticas, também precisa atribuir permissões do IAM ao projeto em que está o tópico do Pub/Sub. Ele pode ser o projeto do Google Cloud de administração de faturamento, se você seguiu a recomendação na seção do projeto.
    1. Abra o menu de navegação do console () e clique em IAM e administrador > IAM.
    2. Na guia Permissões do IAM, confirme se você vê as permissões do projeto em que está o tópico do Pub/Sub. Você verá um título na página semelhante a este: Permissões do projeto “Meu projeto de administração do Faturamento do Cloud”.
    3. Adicione o e-mail da conta de serviço como membro do projeto e atribua o papel Administrador de segurança do Cloud IAM ao membro dessa conta.
      1. Clique em ADICIONAR.
      2. No campo Novos membros, insira o endereço de e-mail da conta de serviço.
      3. Na lista suspensa Selecionar um papel, role para baixo ou filtre por IAM e selecione o papel Administrador de segurança.

C. Usar o arquivo de chave da conta de serviço no seu ambiente

Forneça credenciais de autenticação ao código do aplicativo definindo a variável de ambiente GOOGLE_APPLICATION_CREDENTIALS. Substitua [PATH] pelo caminho do arquivo JSON que contém sua chave da conta de serviço. Essa variável só se aplica à sessão de shell atual. Assim, se você abrir uma nova sessão, precisará definir a variável novamente.

Linux ou macOS

export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

Exemplo:

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/my-key.json"

Windows

Com o PowerShell:

$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

Exemplo:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\my-key.json"

Com prompt de comando:

set GOOGLE_APPLICATION_CREDENTIALS=[PATH]

5. Instalar e inicializar o SDK do Cloud

Se você planeja usar a API Cloud Billing Budget, precisa instalar e inicializar o SDK do Cloud. Ele é um conjunto de ferramentas para gerenciar recursos e aplicativos hospedados no Google Cloud. Isso inclui a ferramenta de linha de comando gcloud. O link a seguir fornece as instruções:

Instale e inicialize o SDK do Cloud..

6. Testar o SDK e a autenticação

Se você tiver configurado a autenticação nas etapas anteriores, poderá usar a ferramenta gcloud para testar o ambiente de autenticação. Execute o seguinte comando para verificar se ocorrem erros e se as credenciais são retornadas:

gcloud auth application-default print-access-token

Esse comando é usado por todas as amostras de REST da linha de comando da API Cloud Billing Budget para autenticar as chamadas de API.

7. Instalar a biblioteca de cliente da API Cloud Billing Budget

Como a API Cloud Billing Budget é criada em HTTP e JSON, qualquer cliente HTTP padrão pode enviar solicitações a ela e analisar as respostas.

Há opções para chamar a API:

  • Bibliotecas de cliente compatíveis com o Google (recomendado)

    As bibliotecas de cliente oferecem melhor integração de linguagens, mais segurança e suporte para realização de chamadas que requerem autorização do usuário. As bibliotecas de cliente compatíveis com o Google estão disponíveis para várias linguagens conhecidas e são a opção recomendada.

  • REST

  • gRPC