Configuración de la API de presupuesto de Facturación de Cloud

En esta guía, se proporcionan todos los pasos de configuración necesarios para comenzar a usar la API de presupuesto de Facturación de Cloud.

Antes de comenzar

Debes hacer lo siguiente antes de leer esta guía:

  1. Consulta Descripción general de la API de presupuesto de Facturación de Cloud.
  2. Consulta Requisitos previos de la API de presupuesto de Facturación de Cloud.

Acerca de Cloud Console

Google Cloud Console (consultar la documentación, abrir la consola) es una IU web que se usa para aprovisionar, configurar, administrar y supervisar los sistemas que usan productos de Google Cloud. Usa Cloud Console para configurar y administrar los recursos de Google Cloud y de la Facturación de Cloud.

1. Selecciona o crea un proyecto

Para usar los servicios que proporciona Google Cloud, debes crear un proyecto. En él, se organizan todos tus recursos de Google Cloud. Un proyecto consta de un conjunto de colaboradores, API habilitadas (y otros recursos), herramientas de supervisión, datos de facturación, y controles de autenticación y acceso. Puedes crear uno o varios proyectos y usarlos para organizar tus recursos de Google Cloud en una jerarquía de recursos. Para obtener más información sobre los proyectos, consulta la documentación de Resource Manager.

Recomendación: Te recomendamos que configures un proyecto de Google Cloud independiente y único que contenga todas tus necesidades de administración de la facturación, incluida la API de presupuesto de Facturación de Cloud. El proyecto de administración de la facturación de Google Cloud también se puede usar para el acceso a la API de la cuenta de facturación de Cloud, los datos exportados de la Facturación de Cloud y los canales de Pub/Sub destinados a las notificaciones de presupuesto programáticas, entre otras cosas.

En la página de selección de proyectos de Cloud Console, selecciona o crea un proyecto de Cloud.

Ir a la página Selector de proyectos

2. Habilita la facturación

Debes asegurarte de que la facturación esté habilitada en el proyecto que usas para llamar a la API de presupuesto de Facturación de Cloud. Si seguiste la recomendación en la sección de proyecto, este es tu proyecto de administración de la facturación de Google Cloud.

Una cuenta de facturación de Cloud se usa para definir quién paga por un conjunto determinado de recursos de Google Cloud. Los recursos, que pueden ser, por ejemplo, API habilitadas, están organizados en proyectos. Una cuenta de facturación de Cloud se puede vincular a uno o más proyectos. El uso del proyecto se carga a la cuenta de facturación vinculada. En la mayoría de los casos, configuras la facturación cuando creas un proyecto. Para obtener más información, consulta la documentación de la Facturación de Cloud.

Configura los presupuestos de Facturación de Cloud para supervisar una cuenta de facturación de Cloud. La cuenta de facturación de Cloud que supervisas puede ser la misma que está vinculada al proyecto usado para llamar a la API de presupuesto de Facturación de Cloud. Ten en cuenta que la API de presupuesto de Facturación de Cloud es gratuita para los clientes de Google Cloud. Si eliges configurar las notificaciones de presupuesto programáticas, se te cobrarán los precios estándar de Pub/Sub.

Comprueba que la facturación esté habilitada en tu proyecto.

Descubre cómo puedes habilitar la facturación

3. Habilita la API

Debes habilitar la API de presupuesto de Facturación de Cloud en el proyecto que usas para llamarla. Si seguiste la recomendación en la sección de proyecto, este es tu proyecto de administración de la facturación de Google Cloud.

Para obtener más información sobre cómo habilitar las API, consulta la documentación de Service Usage.

Habilita las Cloud Billing Budget API.

Habilita la API

4. Configura la autenticación

Si planeas usar la API de presupuesto de Facturación de Cloud, debes configurar la autenticación. Cualquier aplicación cliente que use la API debe estar autenticada y tener acceso a los recursos solicitados. En esta sección, se describen conceptos importantes de relacionados con la autenticación y se proporcionan pasos para configurarla. Si quieres obtener más información, consulta la descripción general de la autenticación de GCP.

Acerca de las cuentas de servicio

Existen varias opciones para la autenticación, pero te recomendamos que uses las cuentas de servicio para la autenticación y el control de acceso. Una cuenta de servicio proporciona credenciales para las aplicaciones, no para los usuarios finales.

Las cuentas de servicio pertenecen a los proyectos, y puedes crear muchas cuentas de servicio para un proyecto. Para obtener más información, consulta Cuentas de servicio.

Acerca de las funciones

Cuando una identidad (la cuenta de servicio) llama a una API, Google Cloud requiere que la identidad tenga los permisos correspondientes. Para otorgar permisos, debes otorgar funciones a una cuenta de servicio. Si quieres obtener más información, consulta la documentación de administración de identidades y accesos (IAM).

A fin de usar todos los métodos de la API de presupuesto de Facturación de Cloud, deberás agregar la cuenta de servicio como miembro a cada cuenta de facturación de Cloud en la que desees usar esta API para administrar los presupuestos de manera programática, y asignar las funciones adecuadas a la cuenta de servicio.

Si planeas configurar un tema de Pub/Sub para notificaciones de presupuesto programáticas, también debes agregar la cuenta de servicio como miembro del proyecto en el que tu tema de Pub/Sub reside, y asigna la función de Administrador de seguridad de IAM a la cuenta de servicio. Esta función es necesaria si se desea que la cuenta de servicio tenga permiso para otorgar la función de publicador de Pub/Sub en el tema, de modo que la Facturación de Cloud pueda publicar mensajes en él.

Para obtener más información sobre las funciones específicas de las API de Facturación de Cloud, consulta la documentación del control de acceso de las API de Facturación de Cloud.

Acerca de las claves de cuentas de servicio

Las cuentas de servicio están asociadas con uno o más pares de claves públicas/privadas. Cuando creas un par de claves nuevo, descargas la clave privada. Tu clave privada se usa para generar credenciales cuando se llama a la API. Eres responsable de la seguridad de la clave privada y de otras operaciones de administración, como la rotación de claves.

A. Crea una cuenta de servicio y descarga el archivo de claves privadas

La cuenta de servicio debe crearse en el mismo proyecto en el que registraste la API de presupuesto de Facturación de Cloud. Si seguiste la recomendación en la sección de proyecto, este es tu proyecto de administración de la facturación de Google Cloud.

  1. En Cloud Console, ve a la página Crear una clave de cuenta de servicio.

    Ir a la página Crear una clave de cuenta de servicio
  2. En la lista Cuenta de servicio, selecciona Cuenta de servicio nueva.
  3. Ingresa un nombre en el campo Nombre de la cuenta de servicio.
  4. No selecciones un valor de la lista Función (esta cuenta de servicio no administrará recursos del proyecto). En un paso posterior, otorgarás a la cuenta de servicio los permisos necesarios para administrar presupuestos de la cuenta de facturación de Cloud.
  5. Haz clic en Crear. Aparecerá una nota en la que se advertirá que esta cuenta de servicio no tiene función.
  6. Haz clic en Crear sin función. Se descargará a tu computadora un archivo JSON con la clave.

B. Otorga a tu cuenta de servicio permisos para usar la API de presupuesto de Facturación de Cloud

Otorga funciones de IAM y Facturación de Cloud a la cuenta de servicio de modo que se asignen los permisos necesarios a fin de usar todos los métodos de la API de presupuesto de Facturación de Cloud para todos los presupuestos de tu cuenta de facturación de Cloud.

  1. Busca la dirección de correo electrónico de la cuenta de servicio dentro del archivo JSON que acabas de descargar, con la clave client_email. El correo electrónico se verá así: service-account-name@project-id.iam.gserviceaccount.com.
  2. En Cloud Console, ve a la página de administración de cuentas de facturación y sigue estas instrucciones para actualizar los permisos de facturación de la cuenta de servicio.
  3. Opcional: Si planeas configurar tus presupuestos de modo que se usen las notificaciones programáticas, también debes asignar permisos de IAM al proyecto en el que se encuentra el tema de Pub/Sub (puede ser el proyecto de administración de la facturación de Google Cloud si seguiste la recomendación en la sección de proyecto).
    1. Abre el menú de navegación de la consola () y haz clic en IAM y administración > IAM.
    2. En la pestaña Permisos de IAM, confirma que ves los permisos del proyecto en el que se encuentra el tema de Pub/Sub. En la página, verás un título similar a este: Permisos para el proyecto “Mi proyecto de administrador de la Facturación de Cloud”.
    3. Agrega el correo electrónico de la cuenta de servicio como miembro del proyecto y asigna la función de administrador de seguridad de IAM al miembro de la cuenta de servicio.
      1. Haz clic en  Agregar.
      2. En el campo Miembros nuevos, ingresa la dirección de correo electrónico de la cuenta de servicio.
      3. En el menú desplegable Seleccionar una función, desplázate hacia abajo hasta IAM (o usa el filtro) y selecciona la función de administrador de seguridad.

C. Usa el archivo de claves de la cuenta de servicio en tu entorno

Configura la variable de entorno GOOGLE_APPLICATION_CREDENTIALS para proporcionar credenciales de autenticación al código de la aplicación. Reemplaza [PATH] por la ruta de acceso del archivo JSON que contiene la clave de tu cuenta de servicio. Esta variable solo se aplica a la sesión actual de shell. Por lo tanto, si abres una sesión nueva, deberás volver a configurar la variable.

Linux o macOS

export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

Por ejemplo:

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

Windows

Con PowerShell:

$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

Por ejemplo:

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

Con el símbolo del sistema:

set GOOGLE_APPLICATION_CREDENTIALS=[PATH]

5. Instala e inicializa el SDK de Cloud

Si planeas usar la API de presupuesto de Facturación de Cloud, debes instalar y, luego, inicializar el SDK de Cloud. El SDK de Cloud es un conjunto de herramientas que puedes usar para administrar recursos y aplicaciones que se alojan en Google Cloud. Esto incluye la herramienta de línea de comandos de gcloud. En el siguiente vínculo, se proporcionan instrucciones:

Instala e inicializa el SDK de Cloud.

6. Prueba el SDK y la autenticación

Si ya configuraste la autenticación en los pasos anteriores, puedes usar la herramienta de gcloud para probar el entorno de autenticación. Ejecuta el siguiente comando para verificar que no se produzcan errores y que se muestren las credenciales:

gcloud auth application-default print-access-token

Todos los ejemplos de REST de la línea de comandos de la API de presupuesto de Facturación de Cloud usan ese comando para autenticar las llamadas a la API.

7. Instala la biblioteca cliente de la API de presupuesto de Facturación de Cloud

La API de presupuesto de Facturación de Cloud se basa en HTTP y JSON, por lo que cualquier cliente HTTP estándar puede enviarle solicitudes y analizar las respuestas.

Tienes las siguientes tres opciones para llamar a la API:

  • Bibliotecas cliente compatibles con Google (opción recomendada)

    Las bibliotecas cliente proporcionan una mejor integración del lenguaje, mayor seguridad y compatibilidad para realizar llamadas que requieren la autorización del usuario. Las bibliotecas cliente compatibles con Google están disponibles para varios lenguajes conocidos, y esta es la opción recomendada.

  • REST

  • gRPC