Cómo establecer valores predeterminados para los buckets de observabilidad

En este documento, se describe cómo configurar una organización, una carpeta o un proyecto para que tus buckets de observabilidad satisfagan tus requisitos de cumplimiento o reglamentarios.

  • En el caso de las organizaciones, las carpetas y los proyectos, la configuración predeterminada de los buckets de observabilidad te permite configurar lo siguiente:

    • Una ubicación de almacenamiento predeterminada
    • Para cada ubicación, una clave predeterminada de Cloud Key Management Service

    Los elementos secundarios de la jerarquía de recursos usan automáticamente estos parámetros de configuración, excepto aquellos en los que configuraste parámetros de configuración predeterminados.

    La configuración predeterminada para los buckets de observabilidad solo se aplica a los recursos nuevos, no a los existentes.

La configuración predeterminada de los buckets de observabilidad no se aplica a los buckets de registros, que almacenan datos de registros. Si deseas obtener información para configurar la ubicación predeterminada o requerir CMEK para los buckets de registros, consulta Configura los parámetros de configuración predeterminados de los recursos para Cloud Logging.

Consulta la configuración predeterminada de los buckets de observabilidad

En esta sección, se describe cómo puedes ver la configuración predeterminada de los buckets de observabilidad para un recurso, que es una organización, una carpeta o un proyecto.

Para recuperar la configuración predeterminada de los buckets de observabilidad, debes ejecutar varios comandos de la API. El primer comando devuelve la ubicación de almacenamiento predeterminada. El segundo comando devuelve la clave de Cloud KMS para esa ubicación. Estas instrucciones son para el Explorador de APIs, que te permite emitir comandos de API desde una página de documentación. Sin embargo, también puedes emitir un comando curl.

Los comandos que se describen en esta sección son para un recurso específico. Las respuestas de estos comandos se limitan a los valores configurados por el usuario para ese recurso. Estos comandos no devuelven la configuración que el recurso podría usar, pero que está configurada para un elemento superior.

Antes de comenzar

Para obtener el permiso que necesitas para ver la configuración predeterminada de los buckets de observabilidad de una organización, carpeta o proyecto, pídele a tu administrador que te otorgue el rol de IAM Observability Viewer (roles/observability.viewer) en la organización, carpeta o proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene el permiso observability.settings.get, que es necesario para ver la configuración predeterminada de los buckets de observabilidad de una organización, una carpeta o un proyecto.

También puedes obtener este permiso con roles personalizados o con otros roles predefinidos.

Obtén la ubicación de almacenamiento predeterminada de un recurso

Para obtener la ubicación de almacenamiento predeterminada de un recurso, envía un comando a un extremo específico del recurso y configura la ubicación de ese comando como global. Los datos de respuesta incluyen la ubicación de almacenamiento predeterminada y el nombre de una cuenta de servicio. Si necesitas CMEK para el recurso, esta cuenta de servicio se usa para recuperar claves de Cloud KMS.

REST

  1. Para el recurso cuya configuración predeterminada deseas mostrar, selecciona el extremo adecuado y, luego, en el Explorador de APIs, especifica el parámetro de ruta:

    Organización:

    Carpeta:

    Proyecto:

    Las variables de las expresiones anteriores tienen el siguiente significado:

    • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.
    • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.
    • PROJECT_ID: Es el identificador del proyecto.
  2. Haz clic en Ejecutar.

    Cuando se ejecuta de forma correcta, la respuesta es un objeto Settings. Si el campo default_storage_location está vacío, no se establece una ubicación de almacenamiento predeterminada.

    Por ejemplo, si ejecutas un comando getSettings y configuras el parámetro de ruta de acceso en una organización, la respuesta será similar a una de las siguientes:

    • Ubicación de almacenamiento predeterminada establecida en "us":

      default_storage_location: "us"
      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      
    • No se estableció una ubicación de almacenamiento predeterminada:

      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      

Obtén la clave predeterminada de Cloud KMS para un recurso y una ubicación

Las claves de Cloud KMS son recursos regionales. Solo se pueden usar para encriptar o desencriptar datos almacenados en la misma ubicación que la clave. Para cada ubicación compatible con los buckets de observabilidad y para cada organización, carpeta o proyecto, puedes configurar los parámetros predeterminados de los buckets de observabilidad con una clave de Cloud KMS.

En esta sección, se describe cómo obtener la clave predeterminada de Cloud KMS para el recurso y la ubicación.

REST

  1. Para el recurso cuya configuración predeterminada deseas mostrar, selecciona el extremo adecuado y, luego, en el Explorador de APIs, especifica el parámetro de ruta:

    Organización:

    Carpeta:

    Proyecto:

    Las variables de las expresiones anteriores tienen el siguiente significado:

    • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.
    • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.
    • PROJECT_ID: Es el identificador del proyecto.
    • LOCATION_ID: Es la ubicación cuya configuración de CMEK deseas ver.
  2. Haz clic en Ejecutar.

    Cuando se ejecuta de forma correcta, la respuesta es un objeto Settings.

    Por ejemplo, supongamos que ejecutas el comando getSettings y configuras el parámetro de ruta de acceso en organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings. En ese caso, la respuesta será similar a una de las siguientes:

    • Cuando no se establece una clave de Cloud KMS para la organización y la ubicación, la respuesta solo enumera una cuenta de servicio:

      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      
    • Cuando se establece la clave de Cloud KMS para la organización y la ubicación, la respuesta incluye una cuenta de servicio y el nombre de la clave de Cloud KMS:

      name: "organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings"
      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      kms_key_name: "projects/my-kms-project/locations/LOCATION_ID/keyRings/my-key-ring/cryptoKeys/my-key"
      

Establece la configuración predeterminada para los buckets de observabilidad

En esta sección, se describe cómo puedes configurar los parámetros predeterminados para los buckets de observabilidad de un recurso, ya sea una organización, una carpeta o un proyecto.

Si planeas requerir la CMEK para un recurso y una ubicación, configura los parámetros de configuración predeterminados para los buckets de observabilidad de ese par antes de establecer la ubicación de almacenamiento predeterminada. Cuando configuras los parámetros de configuración predeterminados para un recurso y una ubicación, debes especificar la clave de Cloud KMS que se usará.

Estas instrucciones son para el Explorador de APIs, que te permite emitir comandos de API desde una página de documentación. Sin embargo, también puedes emitir un comando curl.

Configuración de ejemplo

En esta sección, se enumeran los casos de uso comunes.

Exige que los buckets nuevos se encuentren en una ubicación específica

Para exigir que los buckets de observabilidad creados por el sistema en tu organización se encuentren en la ubicación us, establece la ubicación de almacenamiento predeterminada de tu organización en us.

Para anular la configuración a nivel de la organización y exigir que los nuevos buckets de observabilidad creados por el sistema en la carpeta secundaria llamada my-eu-projects se encuentren en la región eu, establece la ubicación de almacenamiento predeterminada para la carpeta my-eu-projects en eu.

Exige que los buckets nuevos estén en una ubicación específica y usen CMEK

Para exigir que todos los buckets de observabilidad nuevos creados por el sistema en tu organización se encuentren en la ubicación us y usen CMEK, haz lo siguiente:

  1. Configura los parámetros de configuración predeterminados para los buckets de observabilidad de tu organización y la ubicación de us para especificar una clave de Cloud KMS.

  2. Establece us como la ubicación de almacenamiento predeterminada para tu organización.

Antes de comenzar

Si solo planeas establecer la ubicación de almacenamiento predeterminada, puedes omitir la configuración de Google Cloud CLI y no necesitas ningún rol de Cloud KMS.

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Para obtener los permisos que necesitas para establecer la configuración predeterminada de los buckets de observabilidad para una organización, carpeta o proyecto, pídele a tu administrador que te otorgue los siguientes roles de IAM en la organización, carpeta o proyecto:

    Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

    Estos roles predefinidos contienen los permisos necesarios para establecer la configuración predeterminada de los buckets de observabilidad para una organización, una carpeta o un proyecto. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

    Permisos necesarios

    Se requieren los siguientes permisos para establecer la configuración predeterminada de los buckets de observabilidad para una organización, una carpeta o un proyecto:

    • observability.settings.get
    • observability.settings.update
    • cloudkms.cryptoKeys.getIamPolicy
    • cloudkms.cryptoKeys.setIamPolicy

    También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

  3. Si planeas requerir el uso de CMEK, asegúrate de tener una clave de Cloud KMS en la ubicación requerida. Si es necesario, crea un llavero de claves de Cloud KMS y una clave de Cloud KMS.

  4. Determina el recurso cuyos parámetros de configuración predeterminados para los buckets de observabilidad planeas actualizar. Este recurso puede ser una organización, una carpeta o un proyecto.

    Si configuras parámetros de configuración predeterminados para una organización o una carpeta, se aplicarán a todos los elementos subordinados de esa organización o carpeta. Si configuras parámetros predeterminados para los buckets de observabilidad de un proyecto, estos se aplicarán solo a ese proyecto.

  5. Otorga a la cuenta de servicio del recurso acceso a una clave

    Para el recurso cuya configuración predeterminada planeas establecer, otorga un rol a su cuenta de servicio:

    1. Identifica la clave de Cloud KMS que deseas usar para la encriptación y desencriptación.

      Las claves de Cloud KMS son regionales. Por ejemplo, si planeas exigir que los buckets de observabilidad nuevos creados por el sistema se encuentren en la ubicación us, necesitarás una clave de Cloud KMS en esa ubicación.us

    2. Identifica la cuenta de servicio de tu recurso.

      Por ejemplo, si deseas que todos los buckets de observabilidad nuevos creados por el sistema en tu organización se encuentren en la ubicación us y usen CMEK, emite una llamada getSettings a la ubicación global y establece el parámetro de ruta de acceso en una organización. Los datos de la respuesta enumeran la cuenta de servicio de la organización:

      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      
    3. Otorga a la cuenta de servicio que identificaste en el paso anterior el rol de Encriptador/Desencriptador de CryptoKey de Cloud KMS (roles.cloudkms.cryptoKeyEncrypterDecrypter) para la clave de Cloud KMS que deseas usar para encriptar y desencriptar datos.

      Esta vinculación de rol es para una clave de Cloud KMS específica.

      gcloud CLI

      Ejecuta el comando gcloud kms keys add-iam-policy-binding:

      gcloud kms keys add-iam-policy-binding KMS_KEY_NAME \
      --project=KMS_PROJECT_ID \
      --member=serviceAccount:SERVICE_ACCT_NAME@gcp-sa-observability.iam.gserviceaccount.com \
      --role=roles/cloudkms.cryptoKeyEncrypterDecrypter \
      --location=LOCATION_ID \
      --keyring=KMS_KEY_RING
      

      Antes de ejecutar el comando anterior, realiza los siguientes reemplazos:

      • KMS_KEY_NAME: El nombre de la clave.
      • KMS_PROJECT_ID: Es el identificador alfanumérico único, compuesto por el nombre de tu proyecto de Google Cloud y un número asignado de forma aleatoria, del proyecto de Google Cloud que ejecuta Cloud KMS. Para obtener información sobre cómo obtener este identificador, consulta Identifica proyectos.
      • SERVICE_ACCT_NAME: Es el nombre de la cuenta de servicio de tu recurso, que identificaste en el paso anterior.
      • LOCATION_ID: Es la ubicación de tu clave de Cloud KMS.
      • KMS_KEY_RING: Es el nombre del llavero de claves de Cloud KMS.

      Consola de Google Cloud

      1. En la consola de Google Cloud , ve a la página Administración de claves.

        Ir a Administración de claves

      2. Selecciona el nombre del llavero de claves que contiene la clave.
      3. Selecciona la casilla de verificación de la clave.

        La pestaña de Permisos estará disponible.

      4. En el cuadro de diálogo Agregar miembros, especifica la dirección de correo electrónico de la cuenta de servicio de Google Cloud Observability a la que le otorgas acceso.

      5. En el menú Seleccionar un rol, elige Encriptador/desencriptador de CryptoKey de Cloud KMS.

      6. Haz clic en Agregar.

    Configura la clave predeterminada de Cloud KMS para un recurso y una ubicación

    En el paso anterior, otorgaste a la cuenta de servicio de un recurso los permisos para encriptar y desencriptar datos para una clave específica de Cloud KMS. Por ejemplo, es posible que le hayas otorgado a la cuenta de servicio de una organización un rol de IAM que le permita acceder a una clave de Cloud KMS que se encuentre en la ubicación us.

    En este paso, para ese recurso y la ubicación de la clave de Cloud KMS, actualiza la configuración predeterminada de los buckets de observabilidad con la información de la clave. Por ejemplo, en este paso, puedes configurar los parámetros predeterminados para los buckets de observabilidad de tu organización y la ubicación us en la clave de Cloud KMS que también se encuentra en la ubicación us.

    REST

    1. Para el recurso cuya configuración predeterminada deseas establecer, selecciona el extremo adecuado y, luego, en el Explorador de APIs, especifica el parámetro de ruta:

      Organización:

      Carpeta:

      Proyecto:

      Las variables de las expresiones anteriores tienen el siguiente significado:

      • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.
      • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.
      • PROJECT_ID: Es el identificador del proyecto.
      • LOCATION_ID: Es la ubicación de tu clave de Cloud KMS.
    2. Configura el campo updateMask de la siguiente manera:

      updateMask=kmsKeyName
      
    3. Configura el Cuerpo de la solicitud de la siguiente manera:

      {
        "kmsKeyName"="projects/KMS_PROJECT_ID/locations/LOCATION_ID/keyRings/KMS_KEY_RING/cryptoKeys/KMS_KEY_NAME"
      }
      

      Antes de ingresar los valores, realiza los siguientes reemplazos:

      • KMS_PROJECT_ID: Es el identificador alfanumérico único, compuesto por el nombre de tu proyecto de Google Cloud y un número asignado de forma aleatoria, del proyecto de Google Cloud que ejecuta Cloud KMS. Para obtener información sobre cómo obtener este identificador, consulta Identifica proyectos.
      • LOCATION_ID: Es la ubicación de tu clave de Cloud KMS.
      • KMS_KEY_RING: Es el nombre del llavero de claves de Cloud KMS.
      • KMS_KEY_NAME: El nombre de la clave.

      El valor de "kmsKeyName" es el nombre completo de tu clave.

    4. Haz clic en Ejecutar.

      Cuando se ejecuta de forma correcta, la respuesta es un objeto Settings.

      Por ejemplo, supongamos que ejecutas el comando updateSettings para establecer una clave de Cloud KMS y que configuras el parámetro de ruta de acceso en organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings. En ese caso, la respuesta será similar a la siguiente:

      name: "organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings"
      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      kms_key_name: "projects/KMS_PROJECT_ID/locations/LOCATION_ID/keyRings/KMS_KEY_RING/cryptoKeys/KMS_KEY_NAME"
      

    Cómo establecer la ubicación de almacenamiento predeterminada para un recurso

    En este paso, se describe cómo establecer una ubicación de almacenamiento predeterminada para un recurso, que puede ser una organización, una carpeta o un proyecto. Todos los elementos secundarios de la jerarquía de recursos usan automáticamente la ubicación de almacenamiento predeterminada, excepto aquellos en los que configuraste una ubicación de almacenamiento predeterminada.

    Por ejemplo, si configuras la ubicación de almacenamiento predeterminada de una organización en la ubicación us, los nuevos buckets de observabilidad creados por el sistema en esa organización estarán en la ubicación us. Si deseas que una carpeta o un proyecto tengan una ubicación de almacenamiento predeterminada diferente, configura los parámetros de configuración predeterminados para los buckets de observabilidad de la carpeta o el proyecto.

    Si deseas que los buckets de observabilidad creados por el sistema en un recurso usen CMEK, completa los siguientes pasos antes de configurar la ubicación de almacenamiento predeterminada para el recurso:

    1. Otorga a la cuenta de servicio del recurso el rol de IAM que le permite encriptar y desencriptar datos. Este rol es para una clave de Cloud KMS específica, y esa clave se encuentra en una ubicación específica.
    2. Configura los parámetros predeterminados para los buckets de observabilidad del recurso y la ubicación de la clave con la información de la clave de Cloud KMS.

    REST

    Para establecer la ubicación de almacenamiento predeterminada de tu organización, carpeta o proyecto, haz lo siguiente:

    1. Para el recurso cuya configuración predeterminada deseas establecer, selecciona el extremo adecuado y, luego, en el Explorador de APIs, especifica el parámetro de ruta:

      Organización:

      Carpeta:

      Proyecto:

      Las variables de las expresiones anteriores tienen el siguiente significado:

      • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.
      • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.
      • PROJECT_ID: Es el identificador del proyecto.
    2. Configura el campo updateMask de la siguiente manera:

      updateMask=defaultStorageLocation
      
    3. Configura el Cuerpo de la solicitud de la siguiente manera:

      {
        "defaultStorageLocation"="DEFAULT_STORAGE_LOCATION"
      }
      

      Reemplaza DEFAULT_STORAGE_LOCATION por una ubicación de bucket de observabilidad compatible.

      Por ejemplo, supongamos que deseas que todos los buckets de observabilidad nuevos creados por el sistema en tu organización se encuentren en la ubicación us y usen CMEK. En los pasos anteriores, otorgaste a la cuenta de servicio de la organización un rol de IAM que le permite encriptar y desencriptar datos con una clave de Cloud KMS que se encuentra en la ubicación us. Para completar la configuración, establece DEFAULT_STORAGE_LOCATION en us.

    4. Haz clic en Ejecutar.

      Cuando se ejecuta de forma correcta, la respuesta es un objeto Settings.

      Por ejemplo, si ejecutas un comando updateSettings y estableces el parámetro de ruta de acceso en una organización, y estableces la ubicación de almacenamiento predeterminada en us, la respuesta será similar a la siguiente:

      default_storage_location: "us"
      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      

    Actualiza la ubicación de almacenamiento predeterminada de un recurso

    Para actualizar la ubicación de almacenamiento predeterminada de una organización, una carpeta o un proyecto, sigue el mismo procedimiento que cuando estableces la ubicación de almacenamiento predeterminada.

    Administra tus claves de Cloud KMS

    En las siguientes secciones, se describe cómo cambiar, inhabilitar o revocar el acceso a una clave de Cloud KMS.

    Actualiza la clave predeterminada de Cloud KMS para un recurso y una ubicación

    Para actualizar la clave de Cloud KMS de un recurso y una ubicación específicos, sigue el mismo procedimiento que cuando configuraste la clave de Cloud KMS.

    Cómo anular la configuración de la clave de Cloud KMS predeterminada para una ubicación y un recurso

    Para anular o borrar la clave de Cloud KMS de una ubicación y un recurso específicos, sigue el mismo procedimiento que se describe en Cómo establecer la clave de Cloud KMS predeterminada para una ubicación. Sin embargo, cuando configures el cuerpo de la solicitud, establece el valor de la clave en una cadena vacía.

    {
      "kmsKeyName"=""
    }
    

    Si el recurso no tiene una clave predeterminada de Cloud KMS, el sistema busca una clave predeterminada de Cloud KMS en los recursos superiores del recurso:

    • Si se encuentra una clave de Cloud KMS, se usa para encriptar los datos almacenados en el nuevo bucket de observabilidad.

    • Si no se encuentra una clave de Cloud KMS, el nuevo bucket de observabilidad no usará CMEK.

    Revoca el acceso a la clave para un recurso y una ubicación

    Cuando configuras los parámetros de configuración predeterminados para los buckets de observabilidad de un recurso y una ubicación con una clave de Cloud KMS, debes otorgar a la cuenta de servicio del recurso el rol de Encriptador/Desencriptador de CryptoKey de Cloud KMS (roles.cloudkms.cryptoKeyEncrypterDecrypter) para la clave.

    Si no quieres que un recurso tenga acceso a una clave, quita la vinculación de IAM para esa clave. Puedes quitar esta vinculación ejecutando el comando gcloud kms keys remove-iam-policy-binding.

    Es posible que el cambio de rol tarde varias horas en propagarse por completo.

    Comportamiento de la rotación de claves

    Google Cloud Observability no rota automáticamente la clave de encriptación para los archivos temporales de recuperación ante desastres cuando se rota la clave de Cloud KMS asociada a la organización o la carpeta de Google Cloud . Los archivos de recuperación existentes continúan usando la versión de clave con la que se crearon. Los archivos de recuperación nuevos usan la versión de clave primaria actual.

    Para obtener más información, consulta Rotación de claves.

    Limitaciones

    Las siguientes son limitaciones conocidas cuando configuras tus parámetros predeterminados para que los buckets de observabilidad tengan un parámetro de configuración de CMEK.

    Degradación debido a la falta de disponibilidad de la llave

    Google Cloud Observability usa la API de Cloud KMS para acceder a las claves de Cloud KMS y a las claves de Cloud EKM. Es posible que ambos tipos de llaves dejen de estar disponibles.

    Si una clave deja de estar disponible, ocurre lo siguiente:

    • No puedes consultar los datos almacenados.
    • Google Cloud Observability almacena en búfer los datos de las últimas tres horas. Es posible que se descarten los datos anteriores a este período de tres horas.
    • Para el almacenamiento permanente de datos, una clave de Cloud KMS debe estar disponible y ser accesible durante al menos 24 horas consecutivas en el período de 48 horas después de que se escribieron los datos. Si la clave de Cloud KMS no está disponible ni es accesible durante este período, es posible que los datos no se conserven por completo en el almacenamiento y se descarten.

    ¿Qué sigue?