Crea y administra etiquetas

En esta guía, se describe cómo crear y administrar etiquetas en los secretos de Secret Manager. Puedes usar etiquetas para agrupar los secretos relacionados de Secret Manager y almacenar metadatos sobre esos recursos en función de sus etiquetas.

Acerca de las etiquetas de política

Una etiqueta es un par clave-valor que se puede adjuntar a un recurso dentro deGoogle Cloud. Puedes usar etiquetas para permitir o denegar políticas de forma condicional en función de si un recurso tiene una etiqueta específica. Por ejemplo, puedes otorgar de forma condicional roles de Identity and Access Management (IAM) en función de si un recurso tiene una etiqueta específica. Para obtener más información sobre las etiquetas, consulta Descripción general de las etiquetas.

Las etiquetas se adjuntan a los recursos creando un recurso de vinculación de etiqueta que vincula el valor al recurso Google Cloud .

Permisos necesarios

Los permisos que necesitas dependen de la acción que debes realizar.

Para obtener estos permisos, pídele a tu administrador que otorgue el rol sugerido en el nivel adecuado de la jerarquía de recursos.

Visualiza etiquetas

Para ver las definiciones y etiquetas de etiquetas que se adjuntan a los recursos, necesitas el rol visualizador de etiquetas (roles/resourcemanager.tagViewer) o bien otro rol que incluya los siguientes permisos:

Permisos necesarios

  • resourcemanager.tagKeys.get
  • resourcemanager.tagKeys.list
  • resourcemanager.tagValues.list
  • resourcemanager.tagValues.get
  • listTagBindings para el tipo de recurso adecuado. Por ejemplo, compute.instances.listTagBindings para ver las etiquetas adjuntas a las instancias de Compute Engine.
  • listEffectiveTags
  • para el tipo de recurso adecuado. Por ejemplo, compute.instances.listEffectiveTags para ver todas las etiquetas adjuntas a las instancias de Compute Engine o heredadas de ellas.

Para ver las etiquetas a nivel de la organización, necesitas el rol Visualizador de la organización (roles/resourcemanager.organizationViewer) en el recurso de la organización.

Administra etiquetas

Para crear, actualizar y borrar definiciones de etiquetas, necesitas el rol Administrador de etiquetas (roles/resourcemanager.tagAdmin) o algún otro rol que incluya los siguientes permisos:

Permisos necesarios

  • resourcemanager.tagKeys.create
  • resourcemanager.tagKeys.update
  • resourcemanager.tagKeys.delete
  • resourcemanager.tagKeys.list
  • resourcemanager.tagKeys.get
  • resourcemanager.tagKeys.getIamPolicy
  • resourcemanager.tagKeys.setIamPolicy
  • resourcemanager.tagValues.create
  • resourcemanager.tagValues.update
  • resourcemanager.tagValues.delete
  • resourcemanager.tagValues.list
  • resourcemanager.tagValues.get
  • resourcemanager.tagValues.getIamPolicy
  • resourcemanager.tagValues.setIamPolicy

Para administrar etiquetas a nivel de la organización, necesitas el rol Visualizador de la organización (roles/resourcemanager.organizationViewer) en el recurso de la organización.

Administra etiquetas en los recursos

Para agregar y quitar etiquetas adjuntas a los recursos, necesitas el rol Usuario de etiquetas (roles/resourcemanager.tagUser) o bien otro rol con permisos equivalentes, en el valor de etiqueta y los recursos a los que adjuntas el valor de etiqueta. El rol de Usuario de etiquetas incluye los siguientes permisos:

Permisos necesarios

  • Permisos necesarios para el recurso al que adjuntas el valor de la etiqueta
    • Permiso createTagBinding específico del recurso, como compute.instances.createTagBinding para instancias de Compute Engine.
    • Permiso deleteTagBinding específico del recurso, como compute.instances.deleteTagBinding para instancias de Compute Engine.
  • Permisos necesarios para el valor de etiqueta:
    • resourcemanager.tagValueBindings.create
    • resourcemanager.tagValueBindings.delete
  • Permisos que te permiten ver proyectos y definiciones de etiquetas:
    • resourcemanager.tagValues.get
    • resourcemanager.tagValues.list
    • resourcemanager.tagKeys.get
    • resourcemanager.tagKeys.list
    • resourcemanager.projects.get

Para adjuntar etiquetas a los secretos de Secret Manager, necesitas el rol de Administrador de Secret Manager (roles/secretmanager.admin).

Crea claves y valores de etiqueta

Antes de poder adjuntar una etiqueta, debes crear una y configurar su valor. Para crear claves y valores de etiqueta, consulta Crea una etiqueta y Agrega un valor a una etiqueta.

Agrega etiquetas durante la creación de recursos

Puedes agregar etiquetas cuando creas secretos. Agregar etiquetas durante la creación de recursos te permite proporcionar al instante metadatos esenciales para tus recursos y también ayuda a mejorar la organización, el seguimiento de costos y la aplicación automática de políticas.

Console

  1. Ve a la página Secret Manager en la Google Cloud consola.
  2. Ir a Secret Manager

  3. Selecciona la opción para crear un secreto nuevo.
  4. Haz clic en Administrar etiquetas.
  5. Si tu organización no aparece en el panel Administrar etiquetas, haz clic en Seleccionar alcance. Elige agregar etiquetas definidas a nivel de tu organización o proyecto, y, luego, ingresa el ID correspondiente.
  6. Haz clic en Agregar etiqueta.
  7. Selecciona la clave para la etiqueta que deseas adjuntar de la lista. Para filtrar la lista, escribe palabras clave.
  8. Selecciona el valor de la etiqueta que deseas adjuntar de la lista. Puedes filtrar la lista escribiendo palabras clave.
  9. Haz clic en Guardar. La sección Etiquetas se actualiza con la información de las etiquetas.
  10. Crea tu secreto. El Secret nuevo se crea con las etiquetas proporcionadas.

gcloud

Para agregar etiquetas durante la creación del secreto, ejecuta el siguiente comando:

       gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
     

Reemplaza lo siguiente:

  • SECRET_ID: Es el identificador único del secreto.
  • TAG_KEY: Es el ID permanente o el nombre con espacio de nombres de la clave de etiqueta que se adjunta, por ejemplo, tagKeys/567890123456.
  • TAG_VALUE: Es el ID permanente o el nombre con espacio de nombres del valor de la etiqueta que se adjunta; por ejemplo, tagValues/567890123456.

Para especificar varias etiquetas, sepáralas con una coma, por ejemplo, TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2.

API

Envía una solicitud POST a la siguiente URL:

      https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID

Proporciona el siguiente JSON en el cuerpo de la solicitud:

      
{
  "replication": {
    "automatic": {}
  },
  "tags": {
    "TAGKEY_NAME": "TAGVALUE_NAME"
  }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto
  • SECRET_ID: Es el identificador único del secreto.
  • TAGKEY_NAME: Es el ID permanente o el nombre con espacio de nombres de la clave de etiqueta que se adjunta, por ejemplo, tagKeys/567890123456.
  • TAGVALUE_NAME: Es el ID permanente o el nombre con espacio de nombres del valor de la etiqueta que se adjunta; por ejemplo, tagValues/567890123456.

Agrega etiquetas a recursos existentes

Para agregar una etiqueta a los secretos existentes, sigue estos pasos:

Console

  1. Ve a la página Secret Manager en la Google Cloud consola.
  2. Ir a Secret Manager

  3. Selecciona el secreto al que deseas adjuntar una etiqueta.
  4. Haz clic en Etiquetas.
  5. Si tu organización no aparece en el panel Etiquetas, haz clic en Seleccionar permiso. Selecciona tu organización y haz clic en Abrir.
  6. Haz clic en Agregar etiqueta.
  7. Selecciona la clave para la etiqueta que deseas adjuntar de la lista. Para filtrar la lista, escribe palabras clave.
  8. Selecciona el valor de la etiqueta que deseas adjuntar de la lista. Puedes filtrar la lista escribiendo palabras clave.
  9. Haz clic en Guardar.
  10. En el cuadro de diálogo Confirmar, haz clic en Confirmar para adjuntar la etiqueta.
  11. Una notificación confirma que se actualizaron tus etiquetas.

gcloud

Para adjuntar una etiqueta a un secreto, debes crear un recurso de vinculación de etiqueta con el comando gcloud resource-manager tags bindings create:

      gcloud resource-manager tags bindings create \
          --tag-value=TAGVALUE_NAME \
          --parent=RESOURCE_ID
      

Reemplaza lo siguiente:

  • TAGVALUE_NAME es el ID permanente o el nombre de espacio de nombres del valor de la etiqueta que se adjunta; por ejemplo, tagValues/567890123456.
  • RESOURCE_ID es el ID completo del recurso, incluido el nombre de dominio de la API para identificar el tipo de recurso (//secretmanager.googleapis.com/). Por ejemplo, para adjuntar una etiqueta a /projects/PROJECT_ID/secrets/SECRET_ID, el ID completo es //secretmanager.googleapis.com/projects/PROJECT_ID/secrets/SECRET_ID.

Enumera las etiquetas adjuntas a los recursos

Puedes ver una lista de vinculaciones de etiquetas adjuntas o heredadas por el secreto directamente.

Console

  1. Ve a la página Secret Manager en la Google Cloud consola.
  2. Ir a Secret Manager

  3. Las etiquetas se muestran en la columna Etiquetas del secreto.

gcloud

Para obtener una lista de vinculaciones de etiquetas adjuntas a un recurso, usa el comando gcloud resource-manager tags bindings list:

      gcloud resource-manager tags bindings list \
          --parent=RESOURCE_ID
      

Reemplaza lo siguiente:

  • RESOURCE_ID es el ID completo del recurso, incluido el nombre de dominio de la API para identificar el tipo de recurso (//secretmanager.googleapis.com/). Por ejemplo, para adjuntar una etiqueta a /projects/PROJECT_ID/secrets/SECRET_ID, el ID completo es //secretmanager.googleapis.com/projects/PROJECT_ID/secrets/SECRET_ID.

Deberías recibir una respuesta similar a la que figura a continuación:

name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
          tagValue: tagValues/567890123456
          resource: //secretmanager.googleapis.com/projects/project-abc/secrets/secret-xyz
      

Desconecta etiquetas de recursos

Puedes desconectar las etiquetas que se adjuntaron directamente a un secreto. Las etiquetas heredadas se pueden anular conectando una etiqueta con la misma clave y un valor diferente, pero no se pueden desconectar.

Console

  1. Ve a la página Secret Manager en la Google Cloud consola.
  2. Ir a Secret Manager

  3. Selecciona el secreto del que deseas quitar una etiqueta.
  4. Haz clic en Etiquetas.
  5. En el panel Etiquetas, junto a la etiqueta que deseas desconectar, haz clic en Borrar elemento.
  6. Haz clic en Guardar.
  7. En el cuadro de diálogo Confirmar, haz clic en Confirmar para desconectar la etiqueta.

Una notificación confirma que se actualizaron tus etiquetas.

gcloud

Para borrar una vinculación de etiqueta, usa el comando gcloud resource-manager tags bindings delete:

      gcloud resource-manager tags bindings delete \
          --tag-value=TAGVALUE_NAME \
          --parent=RESOURCE_ID
      

Reemplaza lo siguiente:

  • TAGVALUE_NAME es el ID permanente o el nombre de espacio de nombres del valor de la etiqueta que se adjunta; por ejemplo, tagValues/567890123456.
  • RESOURCE_ID es el ID completo del recurso, incluido el nombre de dominio de la API para identificar el tipo de recurso (//secretmanager.googleapis.com/). Por ejemplo, para adjuntar una etiqueta a /projects/PROJECT_ID/secrets/SECRET_ID, el ID completo es //secretmanager.googleapis.com/projects/PROJECT_ID/secrets/SECRET_ID.

Borra claves y valores de etiqueta

Cuando quites una definición de valor o clave de etiqueta, asegúrate de que la etiqueta esté desconectada del secreto. Debes borrar los adjuntos de etiqueta existentes, llamados vinculaciones de etiquetas, antes de borrar la definición de la etiqueta en sí. Para borrar claves y valores de etiqueta, consulta Borra etiquetas.

Etiquetas y condiciones de Identity and Access Management

Puedes usar etiquetas y condiciones de IAM para otorgar de forma condicional vinculaciones de roles a los usuarios en la jerarquía de tu proyecto. Cambiar o borrar la etiqueta adjunta a un recurso puede quitar el acceso del usuario a ese recurso si se aplicó una política de IAM con vinculaciones de funciones condicionales. Para obtener más información, consulta Etiquetas y condiciones de Identity and Access Management.

¿Qué sigue?