En Secret Manager, un secreto es un wrapper alrededor de una colección de versiones de secretos. El secreto almacena metadatos como etiquetas y replicación, pero no contiene el secreto real. En este tema, se describe cómo administrar secretos. También puedes administrar las versiones de un secreto.
Antes de comenzar
Configura Secret Manager y tu entorno local una vez por proyecto.
Enumera los secretos
En estos ejemplos, se muestra cómo enumerar todos los secretos que tienes permiso para ver en el proyecto.
Para mostrar una lista de secretos, se requiere la función de visualizador de secretos (roles/secretmanager.viewer
) en el secreto, el proyecto, la carpeta o la organización.
Las funciones de IAM no se pueden otorgar en una versión del Secret.
Consola
-
Ve a la página Administrador de secretos en Google Cloud Console.
-
En esta página, se muestra la lista de secretos del proyecto.
gcloud CLI
Para usar Secret Manager en la línea de comandos, primero debes instalar o actualizar a la versión 378.0.0 o una posterior de Google Cloud CLI. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ gcloud secrets list
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.
API
En estos ejemplos, se usa curl para demostrar el uso de la API. Puedes generar tokens de acceso con gcloud auth print-access-token. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
Obtén detalles sobre un secreto
Estos ejemplos muestran cómo obtener detalles sobre un secreto mediante la visualización de sus metadatos.
Para ver los metadatos de un secreto, se requiere la función de visualizador de secretos (roles/secretmanager.viewer
) en el secreto, el proyecto, la carpeta o la organización.
Las funciones de IAM no se pueden otorgar en una versión del Secret.
Consola
-
Ve a la página Administrador de secretos en Google Cloud Console.
-
En la página Administrador de secretos, haz clic en el nombre de un secreto para describir.
-
En la página Detalles del secreto, se muestra información sobre el secreto.
gcloud CLI
Para usar Secret Manager en la línea de comandos, primero debes instalar o actualizar a la versión 378.0.0 o una posterior de Google Cloud CLI. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ gcloud secrets describe secret-id
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.
API
En estos ejemplos, se usa curl para demostrar el uso de la API. Puedes generar tokens de acceso con gcloud auth print-access-token. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
Administra el acceso a los secretos
Estos ejemplos muestran cómo administrar el acceso a una versión del secreto, incluido el material del secreto. Para obtener más información sobre los controles de acceso y permisos, consulta la documentación de IAM de Secret Manager.
Para administrar el acceso a un secreto, se requiere la función de administrador de secretos (roles/secretmanager.admin
) en el secreto, el proyecto, la carpeta o la organización.
Las funciones de IAM no se pueden otorgar en una versión del Secret.
Para otorgar acceso, haz lo siguiente:
Consola
-
Ve a la página Administrador de secretos en Google Cloud Console.
-
En la página Administrador de secretos, haz clic en la casilla de verificación junto al nombre del secreto.
-
Si aún no está abierto, haz clic en Mostrar panel de información para abrir el panel.
-
En el panel de información, haz clic en Agregar principal.
-
En el área de texto Principales nuevas, ingrese las direcciones de correo electrónico de los miembros que desea agregar.
-
En el menú desplegable Selecciona una función, selecciona Secret Manager y, luego, Administrador y descriptor de acceso a Secretos.
gcloud CLI
Para usar Secret Manager en la línea de comandos, primero debes instalar o actualizar a la versión 378.0.0 o una posterior de Google Cloud CLI. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ gcloud secrets add-iam-policy-binding secret-id \
--member="member" \
--role="roles/secretmanager.secretAccessor"
En el que member es un miembro de IAM, como un usuario, un grupo o una cuenta de servicio.
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.
API
En estos ejemplos, se usa curl para demostrar el uso de la API. Puedes generar tokens de acceso con gcloud auth print-access-token. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Nota: A diferencia de los otros ejemplos, esto reemplaza toda la política de IAM.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id:setIamPolicy" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{\"policy\": {\"bindings\": [{\"members\": [\"member\"], \"role\": \"roles/secretmanager.secretAccessor\"}]}}"
Para revocar el acceso:
Consola
-
Ve a la página Administrador de secretos en Google Cloud Console.
-
En la página Administrador de secretos, haz clic en la casilla de verificación junto al nombre del secreto.
-
Si aún no está abierto, haz clic en Mostrar panel de información para abrir el panel.
-
En el panel de información, expande Accesor secreto de Secret Manager.
-
Haz clic en el ícono de la papelera junto al cual quieres revocar el acceso.
-
En la ventana emergente, confirma y haz clic en Quitar.
gcloud CLI
Para usar Secret Manager en la línea de comandos, primero debes instalar o actualizar a la versión 378.0.0 o una posterior de Google Cloud CLI. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ gcloud secrets remove-iam-policy-binding secret-id \
--member="member" \
--role="roles/secretmanager.secretAccessor"
En el que member es un miembro de IAM, como un usuario, un grupo o una cuenta de servicio.
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.
API
En estos ejemplos, se usa curl para demostrar el uso de la API. Puedes generar tokens de acceso con gcloud auth print-access-token. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
Nota: A diferencia de los otros ejemplos, esto reemplaza toda la política de IAM.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id:setIamPolicy" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{\"policy\": {\"bindings\": []}}"
Actualiza un secreto
En estos ejemplos, se muestra cómo actualizar los metadatos de un secreto.
La actualización de los metadatos de un secreto requiere la función de administrador de secretos (roles/secretmanager.admin
) en el secreto o en el proyecto. No se pueden otorgar funciones de IAM en una versión del secreto.
Consola
-
Ve a la página Administrador de secretos en Google Cloud Console.
-
En la página Administrador de secretos, haz clic en la casilla de verificación junto al nombre del secreto.
-
Si el Panel de información está cerrado, haz clic en Mostrar panel de información para que aparezca.
-
En el panel de información, haz clic en la pestaña Etiquetas.
-
Haz clic en Agregar etiqueta y, luego, ingresa la clave
secretmanager
con un valor (por ejemplo,rocks
). -
Haz clic en Guardar.
gcloud CLI
Para usar Secret Manager en la línea de comandos, primero debes instalar o actualizar a la versión 378.0.0 o una posterior de Google Cloud CLI. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ gcloud secrets update secret-id \
--update-labels=key=value
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.
API
En estos ejemplos, se usa curl para demostrar el uso de la API. Puedes generar tokens de acceso con gcloud auth print-access-token. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id?updateMask=labels" \
--request "PATCH" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{'labels': {'key': 'value'}}"
Borra un secreto
En estos ejemplos, se muestra cómo borrar un secreto y todas sus versiones.
Esta operación es irreversible. Cualquier servicio o carga de trabajo que intente acceder a un secreto borrado recibirá un error Not Found
.
Para borrar un secreto, se requiere la función de administrador de secretos (roles/secretmanager.admin
) en el secreto, el proyecto, la carpeta o la organización.
Las funciones de IAM no se pueden otorgar en una versión del Secret.
Consola
-
Ve a la página Administrador de secretos en Google Cloud Console.
-
En la página Administrador de secretos, en la columna Acciones del secreto, haz clic en Ver más
. -
En el menú, selecciona Borrar.
-
En el cuadro de diálogo Borrar secreto, ingresa el nombre del secreto.
-
Haz clic en el botón Borrar secreto.
gcloud CLI
Para usar Secret Manager en la línea de comandos, primero debes instalar o actualizar a la versión 378.0.0 o una posterior de Google Cloud CLI. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ gcloud secrets delete secret-id
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.
API
En estos ejemplos, se usa curl para demostrar el uso de la API. Puedes generar tokens de acceso con gcloud auth print-access-token. En Compute Engine o GKE, debes autenticarte con el permiso cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id" \
--request "DELETE" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
Próximos pasos
- Obtén más información para administrar versiones de secretos.
- Obtén más información para administrar accesos a secretos.
- Obtén más información para crear secretos y acceder a ellos.
- Obtén más información sobre el uso de claves administradas por el cliente para encriptar secretos.