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, 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
Para obtener los permisos que necesitas para administrar etiquetas, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Visualizador de etiquetas (
roles/resourcemanager.tagViewer) en los recursos a los que se adjuntan las etiquetas -
Ver y administrar etiquetas a nivel de la organización:
Visualizador de la organización (
roles/resourcemanager.organizationViewer) en la organización -
Crear, actualizar y borrar definiciones de etiquetas:
Administrador de etiquetas (
roles/resourcemanager.tagAdmin) en el recurso para el que creas, actualizas o borras etiquetas -
Adjuntar y quitar etiquetas de los recursos:
Usuario de etiquetas (
roles/resourcemanager.tagUser) en el valor de la etiqueta y los recursos a los que adjuntas o quitas el valor de la etiqueta
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
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 obtener más información, 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. De esta manera, puedes proporcionar metadatos esenciales para tus recursos y permitir una mejor organización, seguimiento de costos y aplicación automatizada de políticas.
Console
- Ve a la página Secret Manager en la Google Cloud consola.
- Selecciona la opción para crear un secreto nuevo.
- Haz clic en Administrar etiquetas.
- Si tu organización no aparece en el panel Administrar etiquetas, haz clic en Seleccionar alcance para las etiquetas y selecciona tu organización o proyecto.
- Haz clic en Agregar etiqueta.
- Selecciona la clave y el valor de la etiqueta de la lista. Puedes filtrar la lista con palabras clave.
- Haz clic en Guardar. La sección Etiquetas se actualiza con la información de las etiquetas.
- Crea tu secreto. El nuevo secreto se crea con las etiquetas proporcionadas.
gcloud
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- 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.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
Windows (PowerShell)
gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
Windows (cmd.exe)
gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- 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.
Método HTTP y URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID
Cuerpo JSON de la solicitud:
{
"replication": {
"automatic": {}
},
"tags": {
"TAGKEY_NAME": "TAGVALUE_NAME"
}
}
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID" | Select-Object -Expand Content
Deberías recibir un código de estado exitoso (2xx) y una respuesta vacía.
C#
Para ejecutar este código, primero configura un entorno de desarrollo de C# e instala el SDK de C# para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Go
Para ejecutar este código, primero configura un entorno de desarrollo de Go e instala el SDK de Go para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Java
Para ejecutar este código, primero configura un entorno de desarrollo de Java e instala el SDK de Java para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js e instala el SDK de Node.js para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
PHP
Para ejecutar este código, primero obtén información a fin de usar PHP en Google Cloud e instala el SDK de PHP para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python e instala el SDK de Python para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Ruby
Para ejecutar este código, primero configura un entorno de desarrollo de Ruby e instala el SDK de Ruby de Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Agrega etiquetas a recursos existentes
Para agregar una etiqueta a secretos existentes, sigue estos pasos:
Console
- Ve a la página Secret Manager en la Google Cloud consola.
- Selecciona el secreto al que deseas adjuntar una etiqueta.
- Haz clic en Etiquetas.
- Si tu organización no aparece en el panel Etiquetas, haz clic en Seleccionar permiso. Selecciona tu organización y haz clic en Abrir.
- Haz clic en Agregar etiqueta.
- Selecciona la clave y el valor de la etiqueta de la lista. Puedes filtrar la lista con palabras clave.
- Haz clic en Guardar.
- En el cuadro de diálogo Confirmar, haz clic en Confirmar para adjuntar la etiqueta.
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:
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
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.RESOURCE_IDes 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.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud resource-manager tags bindings create \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID
Windows (PowerShell)
gcloud resource-manager tags bindings create ` --tag-value=TAGVALUE_NAME ` --parent=RESOURCE_ID
Windows (cmd.exe)
gcloud resource-manager tags bindings create ^ --tag-value=TAGVALUE_NAME ^ --parent=RESOURCE_ID
Node.js
Para ejecutar este código, primero configura un entorno de desarrollo de Node.js e instala el SDK de Node.js para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
PHP
Para ejecutar este código, primero obtén información a fin de usar PHP en Google Cloud e instala el SDK de PHP para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Python
Para ejecutar este código, primero configura un entorno de desarrollo de Python e instala el SDK de Python para Secret Manager. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Enumera las etiquetas adjuntas a los recursos
Puedes ver una lista de vinculaciones de etiquetas adjuntas o heredadas por el secreto directamente.
Console
- Ve a la página Secret Manager en la Google Cloud consola.
- 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:
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
RESOURCE_IDes 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.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud resource-manager tags bindings list \ --parent=RESOURCE_ID
Windows (PowerShell)
gcloud resource-manager tags bindings list ` --parent=RESOURCE_ID
Windows (cmd.exe)
gcloud resource-manager tags bindings list ^ --parent=RESOURCE_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
- Ve a la página Secret Manager en la Google Cloud consola.
- Selecciona el secreto del que quieres quitar una etiqueta.
- Haz clic en Etiquetas.
- En el panel Etiquetas, junto a la etiqueta que deseas desconectar, haz clic en Borrar elemento.
- Haz clic en Guardar.
- 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:
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
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.RESOURCE_IDes 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.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud resource-manager tags bindings delete \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID
Windows (PowerShell)
gcloud resource-manager tags bindings delete ` --tag-value=TAGVALUE_NAME ` --parent=RESOURCE_ID
Windows (cmd.exe)
gcloud resource-manager tags bindings delete ^ --tag-value=TAGVALUE_NAME ^ --parent=RESOURCE_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 obtener más información, consulta Cómo borrar 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?
- Consulta los demás servicios que admiten etiquetas.
- Consulta Etiquetas y control de acceso para aprender a usar etiquetas con la IAM.