Aprende a crear y administrar Secrets con la integración de Secret Manager de Cloud Code.
Para seguir la guía paso a paso sobre esta tarea directamente en el editor de Cloud Shell, haz clic en Guiarme:
Antes de comenzar
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
En la barra de estado de Cloud Code, haz clic en el nombre del proyecto activo.
En el menú Selección rápida que aparece, selecciona Nueva aplicación y, luego, Aplicación de Cloud Run.
En la lista de muestras de Cloud Run, selecciona Python (Flask): Cloud Run.
Selecciona una carpeta para tu muestra y luego haz clic en Create New Application.
- Haz clic en
Secret Manager y espera a que se cargue. - Si se te solicita que autorices a Cloud Shell para que realice llamadas a la API de Google Cloud, haz clic en Autorizar.
- Haz clic en add.
Crear Secreto . - Si se te solicita, selecciona tu proyecto de Google Cloud en el selector del menú desplegable.
- Si se te solicita, habilita la API de Secret Manager.
En la pestaña Secret Manager - Crear secreto que aparece, ingresa lo siguiente en el campo Nombre:
my-secret
En el campo Valor del secreto, ingresa:
Hello secret!
Haz clic en Crear secreto y aparecerá un mensaje que indicará que tu secreto se creó correctamente.
Abre el
Nube API y seleccionaAPI de Secret Manager .Se abrirá la pestaña de detalles de la API de Google Cloud con la API de Secret Manager como encabezado.
En la sección Instalar biblioteca cliente, haz clic en la pestaña Python y Haz clic en play_arrow Ejecutar en la terminal. Esto instalará la biblioteca cliente
google-cloud-secret-manager
.Abre
requirements.txt y agrega la siguiente línea al final del archivo:google-cloud-secret-manager==2.1.0
Tus cambios se guardan automáticamente.
Para obtener el valor más reciente de tu secreto, abre
app.py , y copia y pega la siguiente función:después de la función hello :def access_secret_version(secret_version_id): """Return the value of a secret's version""" from google.cloud import secretmanager # Create the Secret Manager client. client = secretmanager.SecretManagerServiceClient() # Access the secret version. response = client.access_secret_version(name=secret_version_id) # Return the decoded payload. return response.payload.data.decode('UTF-8')
Para llamar a la función
access_secret_version
, reemplaza elvariable del mensaje con lo siguiente:message = access_secret_version("<SECRET_VERSION_ID>")
Si aún tienes abierta la pestaña Secret Manager - Crear secreto, file_copy Copia el ID.
Para obtener el ID de una versión del secreto en cualquier momento, navega a
Secret Manager > [SECRET_NAME] > Versiones, mantén el puntero sobre tu versión y haz clic en Copiar el ID de recurso.Para agregar el ID de versión, reemplaza el marcador de posición
por el ID de versión que copiaste.<SECRET_VERSION_ID>
- Abre el menú
Cloud Code desde la barra de estado. - Para compilar e implementar tu servicio en el emulador, selecciona
Ejecutar en emulador de Cloud Run . - En la pestaña Ejecutar/depurar en el emulador de Cloud Run que aparece, haz clic en Ejecutar.
Cuando se ejecuta la configuración por primera vez, este proceso puede tardar hasta 5 minutos. En el panel
Salida se muestra el progreso mientras se compila y se implementa tu app.Luego de que se haya compilado la aplicación, iníciala haciendo clic en el vínculo localhost que aparece en tu
Salida panel. El valor de tu secreto se muestra debajo del gráfico de éxito.- Haz clic en el ícono
Secreto Manager . - Para expandir tu secreto, haz clic en él.
- En la carpeta Versiones, haz clic con el botón derecho en la versión numerada cuyo valor deseas ver y selecciona Mostrar valor de la versión.
- Haz clic en la vista de
Secret Manager . - Haz clic con el botón derecho en el nombre de tu secreto y selecciona Crear versión del secreto.
- En la pestaña Secret Manager - Crear versión que aparece, ingresa un nuevo valor y haz clic en Crear versión.
- Después de que se abra la pestaña Secret Manager - Create Secret, haz clic en file_copy Copy, copia el ID.
- Para agregar el ID de versión más reciente, reemplaza la versión actual que aparece en el mensaje
variable en
app.py con el ID de versión más reciente que copiaste. - Haz clic en . Cloud Code y, luego, expande la sección Secret Manager.
- Para expandir tu secreto, haz clic en él.
- En la carpeta Versiones, haz clic con el botón derecho en la versión numerada que deseas inhabilitar.
- Selecciona Inhabilitar versión.
- Haz clic en . Cloud Code y, luego, expande la sección Secret Manager.
- Para expandir tu secreto, haz clic en él.
- En la carpeta Versiones, haz clic con el botón derecho en la versión que deseas destruir.
- Selecciona Destruir versión.
- Haz clic en Cloud Code y, luego, expande la sección Kubernetes.
- Mantén el puntero sobre el nombre del clúster y, luego, haz clic open_in_new Abrir en la consola de Google Cloud.
- Haz clic en Borrar y, luego, en Borrar.
Ve a la página Proyectos en la consola de Google Cloud.
Selecciona el proyecto que creaste para esta guía de inicio rápido y haz clic en Borrar.
Escribe el ID del proyecto para confirmar y, luego, haz clic en Cerrar.
Con esta acción, se cierra el proyecto y se programa su eliminación.
Crea tu servicio de Cloud Run
Usar el Editor de Cloud Shell como entorno para crear tu servicio y secreto de Cloud Run. El editor está precargado con las herramientas para el desarrollo en Cloud.
Sigue estos pasos para crear tu servicio:
Después de que el editor de Cloud Shell cargue el servicio en un nuevo espacio de trabajo, visualiza sus archivos en la
Crea un secreto
Secret Manager te permite almacenar, administrar y acceder a los secretos de forma segura como BLOB binarios o cadenas de texto Además, administra tus Secrets, lo que significa que no tienes que lidiar con máquinas virtuales ni servicios operativos.
Sigue estos pasos para crear un secreto con la integración de Secret Manager de Cloud Code:
Agrega un Secret a tu código
Los secretos son ideales para almacenar información de configuración, como la claves de API o certificados TLS que necesita una aplicación en el tiempo de ejecución.
Sigue estos pasos para agregar un Secret a tu código:
Ejecuta en el emulador de Cloud Run
Para probar tu Secret nuevo, ejecuta tu servicio de Cloud Run de forma local en el emulador de Cloud Run.
Visualiza y crea una nueva versión del secreto
En la vista de Secret Manager de Cloud Code, puedes ver tus secretos del proyecto, con acciones para administrarlos.
Visualiza el valor de una versión del Secret
Ten en cuenta que no puedes editar una versión del secreto. Para actualizar el valor de un Secret, debes crear una versión nueva.
Crea una nueva versión del Secret
El valor de un Secret se almacena en una versión secreta. Un secreto puede tener muchas versiones. Esto es útil en situaciones en las que un Secret cambia. Actualizar un Secret con una nueva versión significa que no tienes que actualizar tu código.
latest
.
Visualiza y administra secretos
Inhabilita una versión del Secret
Las versiones del secreto se habilitan de forma predeterminada después de su creación, lo que significa que se pueden a las que se accede. No se puede acceder a un Secret inhabilitado, pero puedes restablecer el acceso a él en cualquier momento.
Para inhabilitar una versión de un Secret, haz lo siguiente:
Destruye una versión del secreto
Cuando destruyes una versión de un Secret, no se puede acceder a ella. Destruir una versión de secreto es permanente.
Realice una limpieza
Si deseas borrar solo el clúster que creaste para esta guía de inicio rápido, haz lo siguiente:
Para borrar tu proyecto (y los recursos asociados, incluidos los clústeres), sigue estos pasos: