Registra cambios del objeto

En esta página, se describe cómo configurar y usar las notificaciones de Cloud Pub/Sub para Cloud Storage. Con las notificaciones de Cloud Pub/Sub puedes realizar un seguimiento de los cambios en tus objetos de Cloud Storage: A fin de obtener más información sobre Cloud Pub/Sub para Cloud Storage, consulta la página de conceptos de notificaciones.

Requisitos previos

Antes de usar esta función, debes realizar las siguientes acciones:

  1. Habilita la API de Cloud Pub/Sub para el proyecto que recibirá notificaciones.

    Habilitar la API

  2. Obtén los permisos necesarios en el depósito que desees supervisar:

  3. Obtén los permisos necesarios en el proyecto que recibirá notificaciones:

    • Si eres propietario del proyecto que recibirá notificaciones, lo más probable es que tengas el permiso necesario.

    • Si planeas crear temas para recibir notificaciones, debes tener el permiso de pubsub.topics.create.

    • Si planeas usar temas nuevos o existentes, debes tener el permiso de pubsub.topics.setIamPolicy. Por lo general, si creas un tema, tienes los permisos de pubsub.topics.setIamPolicy para este.

      Consulta Control de acceso de Cloud Pub/Sub para obtener instrucciones sobre cómo obtener estos permisos de Cloud Pub/Sub.

  4. Obtén un tema de Cloud Pub/Sub existente al que desees enviar notificaciones.

  5. Obtén la dirección de correo electrónico de la cuenta de servicio asociada con el proyecto que contiene tu depósito de Cloud Storage.

  6. Usa la dirección de correo electrónico que obtuviste en el paso anterior a fin de asignar a la cuenta de servicio la función pubsub.publisher de IAM para el tema de Cloud Pub/Sub que desees.

Aplica una configuración de notificaciones

Con los siguientes pasos, puedes agregar una configuración de notificaciones a tu depósito que envíe notificaciones para todos los eventos compatibles. A fin de enviar notificaciones para un subconjunto de eventos, incluye la marca -e con el comando de gsutil o la clave event_types en el cuerpo de tu solicitud JSON.

gsutil

Usa el comando gsutil notification create y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

gsutil notification create -t [TOPIC_NAME] -f json gs://[BUCKET_NAME]

Si usas un [TOPIC_NAME] que no existe en tu proyecto, gsutil crea uno.

API de JSON

  1. Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus propias credenciales de OAuth.
  2. Crea un archivo .json que contenga la siguiente información y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

    {
    "topic": "projects/[PROJECT_ID]/topics/[TOPIC_NAME]",
    "payload_format": "JSON_API_V1"
    }

  3. Usa cURL para llamar a la API de JSON con una solicitud POST notificationConfigs y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

    curl -X POST --data-binary @[JSON_FILE_NAME].json 
    -H "Authorization: Bearer [OAUTH2_TOKEN]"
    -H "Content-Type: application/json"
    "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]/notificationConfigs"

Enumera las configuraciones de notificaciones para un depósito

Para enumerar las configuraciones de notificaciones asociadas con un depósito en particular, realiza las siguientes acciones:

gsutil

Usa el comando gsutil notification list y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

gsutil notification list gs://[BUCKET_NAME]

API de JSON

  1. Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus propias credenciales de OAuth.
  2. Usa cURL para llamar a la API de JSON con una solicitud GET notificationConfigs y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

    curl -X GET 
    -H "Authorization: Bearer [OAUTH2_TOKEN]"
    "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]/notificationConfigs"

Quita una configuración de notificaciones

Para quitar de tu depósito una configuración de notificaciones existente, realiza las siguientes acciones:

gsutil

Usa el comando gsutil notification delete y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

gsutil notification delete projects/_/buckets/[BUCKET_NAME]/notificationConfigs/[CONFIGURATION_NAME]

Una vez enviadas, pueden pasar hasta 30 segundos para que se detengan todas las notificaciones que la configuración de notificaciones activó.

API de JSON

  1. Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus propias credenciales de OAuth.
  2. Usa cURL para llamar a la API de JSON con una solicitud DELETE notificationConfigs y reemplaza [VALUES_IN_BRACKETS] por los valores adecuados:

    curl -X DELETE 
    -H "Authorization: Bearer [OAUTH2_TOKEN]"
    "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]/notificationConfigs/[CONFIGURATION_NAME]"

Una vez enviadas, pueden pasar hasta 30 segundos para que se detengan todas las notificaciones que la configuración de notificaciones activó.

¿Qué sigue?

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

¿Necesitas ayuda? Visita nuestra página de asistencia.