En esta página, se describe cómo crear un secreto. Un secreto contiene una o más versiones de secretos, junto con metadatos como etiquetas y políticas de replicación. El contenido real de un secreto se almacena en una versión de secreto.
Antes de comenzar
-
Configura la autenticación.
Selecciona la pestaña que corresponda a la forma en que planeas usar las muestras de esta página:
Console
Cuando usas la consola de Google Cloud para acceder a los servicios y las APIs de Google Cloud , no necesitas configurar la autenticación.
gcloud
En la consola de Google Cloud , activa Cloud Shell.
En la parte inferior de la consola de Google Cloud , se inicia una sesión de Cloud Shell que muestra una ventana emergente con una línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI.
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Google Cloud .
Roles obligatorios
Para obtener los permisos que necesitas
para crear un Secret,
pídele a tu administrador que te otorgue el rol de IAM
Administrador de Secret Manager (roles/secretmanager.admin) en el proyecto, la carpeta o la organización.
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.
Crea un secreto
Puedes crear secretos con la consola de Google Cloud , Google Cloud CLI, la API de Secret Manager o las bibliotecas cliente de Secret Manager.
Console
-
En la consola de Google Cloud , ve a la página Secret Manager.
-
En la página de Secret Manager, haz clic en Crear secreto.
-
En la página Crear secreto, ingresa un nombre para el secreto en el campo Nombre. Un nombre de secreto puede contener letras mayúsculas y minúsculas, números, guiones y guiones bajos. La longitud máxima permitida para un nombre es de 255 caracteres.
-
Ingresa un valor para el secreto (por ejemplo,
abcd1234). El valor del secreto puede tener cualquier formato, pero no debe superar los 64 KiB. También puedes subir un archivo de texto que contenga el valor del secreto con la opción Subir archivo. Esta acción crea automáticamente la versión del secreto. -
Haz clic en Crear secreto.
gcloud
Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:
- SECRET_ID: ID del secreto.
- REPLICATION_POLICY: Es la política de replicación del secreto, que puede ser automática o administrada por el usuario.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud secrets create SECRET_ID \ --replication-policy="REPLICATION_POLICY"
Windows (PowerShell)
gcloud secrets create SECRET_ID ` --replication-policy="REPLICATION_POLICY"
Windows (cmd.exe)
gcloud secrets create SECRET_ID ^ --replication-policy="REPLICATION_POLICY"
REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: Es el ID del proyecto de Google Cloud .
- SECRET_ID: ID del secreto.
- REPLICATION_POLICY: Es la política de replicación del secreto, que puede ser automática o administrada por el usuario.
Método HTTP y URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID
Cuerpo JSON de la solicitud:
{
"replication": {
"REPLICATION_POLICY": {}
}
}
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 una respuesta JSON similar a la que se muestra a continuación:
{
"name": "projects/PROJECT_ID/secrets/SECRET_ID",
"createTime": "2024-03-25T08:24:13.153705Z",
"etag": "\"161477e6071da9\""
}
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.
Para seleccionar la política de replicación adecuada para tu secreto, consulta Elige una política de replicación.
Agrega una versión del Secret
Secret Manager crea automáticamente versiones de los datos de secretos con versiones de secretos. Las operaciones de claves, como el acceso, la destrucción, la inhabilitación y la habilitación, se aplican a versiones de secretos específicas. Con Secret Manager, puedes asociar secretos con versiones específicas, como 42, o con alias dinámicos, como latest. Para obtener más información, consulta Agrega una versión del secreto.
Accede a una versión del secreto
Para acceder a los datos de un secreto desde una versión específica del secreto para una autenticación exitosa, consulta Accede a una versión del secreto.
¿Qué sigue?
- Consulta las cuotas y los límites de frecuencia para los diferentes tipos de solicitudes a la API (acceso, lectura y escritura) por proyecto.
- Obtén más información para administrar el acceso a los secretos.
- Obtén más información para configurar notificaciones en un secreto.