Gestión de secretos de clave-valor con CLI de Vault
Si ya utiliza HashiCorp Vault, puede utilizar la interfaz de línea de mandatos (CLI) para interactuar con IBM Cloud® Secrets Manager para gestionar los secretos de clave-valor. Todas las operaciones siguen las directrices disponibles para la CLI de Vault.
Secrets Manager admite los comandos CLI de HashiCorp Vault KV Secrets Engine Versión 2. Para más información sobre la CLI KV v2, consulte la documentación de Vault KV v2.
Antes de empezar, configure la CLI de Vault para que pueda acceder a la instancia de Secrets Manager utilizando mandatos Vault. Para obtener más información sobre la utilización de la CLI de Vault, consulte la documentación de Vault.
Para utilizar la CLI estándar para Secrets Manager, consulte la Referencia de CLI de Secrets Manager.
Crear o actualizar un secreto de clave-valor
Cree una versión de un secreto de clave-valor.
vault kv put [-format=FORMAT] ibmcloud/kv/SECRET_NAME [KEY_VALUE_PAIRS]
Crear una versión de un secreto de clave-valor en un grupo personalizado.
vault kv put [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME [KEY_VALUE_PAIRS]
Requisitos previos
Necesita el rol de servicio Escritor para crear un secreto de clave-valor.
Opciones de comando
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Crear o actualizar la carga útil de un secreto de clave-valor.
vault kv put ibmcloud/kv/example-kv-secret key1=value1 key2=value2
Crear o actualizar la carga útil de un secreto de clave-valor en un grupo personalizado.
vault kv put ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/example-kv-secret key1=value1 key2=value2
Salida
El mandato para crear una nueva versión de un secreto de kv devuelve la salida siguiente:
Key Value
--- -----
created_time 2022-03-08T18:32:43.610242127Z
deletion_time n/a
destroyed false
version 2
Leer una versión de un secreto de clave-valor
Obtenga una versión de un secreto de clave-valor. Una solicitud satisfactoria devuelve los datos de secretos que están asociados con la versión especificada de su secreto, junto con otros metadatos.
vault kv get [-version=VERSION] [-format=FORMAT] ibmcloud/kv/SECRET_NAME
Obtener una versión de un secreto de clave-valor en un grupo personalizado.
vault kv get [-version=VERSION] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio Lector o Escritor para leer versiones de secretos de clave-valor.
Opciones de comando
- -version
- La versión que desea leer. Si se omite, se devuelve la última versión.
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Leer una versión de un secreto de clave-valor.
vault kv get -version=1 ibmcloud/kv/my-test-kv-secret
Leer una versión de un secreto de clave-valor en un grupo personalizado.
vault kv get -version=1 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para leer una nueva versión de un secreto de kv devuelve la salida siguiente:
====== Metadata ======
Key Value
--- -----
created_time 2022-03-04T17:08:34.406336489Z
deletion_time n/a
destroyed false
version 1
==== Data ====
Key Value
--- -----
key1 value1
Suprimir la última versión de un secreto de clave-valor
Suprima la última versión de un secreto de clave-valor. Puede deshacer la supresión llamando al mandato undelete.
vault kv delete [-format=FORMAT] ibmcloud/kv/SECRET_NAME
Suprimir la última versión de un secreto de clave-valor en un grupo personalizado.
vault kv delete [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio de Gestor para suprimir secretos de clave-valor.
Opción de mandato
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Suprima la última versión de un secreto de clave-valor.
vault kv delete -format=json ibmcloud/kv/my-test-kv-secret
Suprimir la última versión de un secreto de clave-valor en un grupo personalizado.
vault kv delete -format=json ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para suprimir la última versión de un secreto de kv no devuelve ninguna salida.
Suprimir versiones especificadas de un secreto de clave-valor
Suprima las versiones especificadas de un secreto de clave-valor. Puede deshacer la supresión llamando al mandato undelete.
vault kv delete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME
Suprimir las versiones especificadas de un secreto de clave-valor en un grupo personalizado.
vault kv delete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio de Gestor para suprimir secretos de clave-valor.
Opciones de comando
- -versions
- Las versiones que desea suprimir.
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Suprimir versiones especificadas de un secreto de clave-valor.
vault kv delete -versions=2 ibmcloud/kv/my-test-kv-secret
Suprimir versiones especificadas de un secreto de clave-valor en un grupo personalizado.
vault kv delete -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para suprimir versiones especificadas de un secreto de kv no devuelve ninguna salida.
Restaurar un secreto de clave-valor
Restaurar una versión suprimida anteriormente de un secreto de clave-valor.
vault kv undelete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME
Restaurar una versión suprimida anteriormente de un secreto de clave-valor en un grupo personalizado.
vault kv undelete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio Gestor para restaurar secretos.
Opciones de comando
- -versions
- Las versiones que desea suprimir.
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Anular la supresión de las versiones especificadas de un secreto de clave-valor.
vault kv undelete -versions=2 ibmcloud/kv/my-test-kv-secret
Anular la supresión de las versiones especificadas de un secreto de clave-valor.
vault kv undelete -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para anular la supresión de las versiones especificadas de un secreto de kv devuelve la salida siguiente:
Success! Data written to: ibmcloud/kv/undelete/my-test-kv-secret
Destruir versiones de un secreto
Destruya las versiones especificadas de un secreto de clave-valor de forma permanente. Para borrar de forma temporal las versiones de un secreto en su lugar, utilice el mandato delete specified versions.
vault kv destroy [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME
Destruir las versiones especificadas de un secreto de clave-valor en un grupo personalizado.
vault kv destroy [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio Gestor para suprimir secretos.
Opciones de comando
- -versions
- Las versiones que desea destruir.
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Suprimir las versiones especificadas permanentemente de un secreto de clave-valor.
vault kv destroy -versions=2 ibmcloud/kv/my-test-kv-secret
Suprimir permanentemente las versiones especificadas de un secreto de clave-valor en un grupo personalizado.
vault kv destroy -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para destruir versiones de un secreto de kv devuelve la salida siguiente:
Success! Data written to: ibmcloud/kv/undelete/my-test-kv-secret
Crear o actualizar metadatos clave-valor secreto
Crear o actualizar los metadatos de un secreto clave-valor.
vault kv metadata put [-format=FORMAT] [METADATA_KEY_VALUE_PAIRS] ibmcloud/kv/SECRET_NAME
Crear o actualizar metadatos de un secreto clave-valor en un grupo personalizado.
vault kv metadata put [-format=FORMAT] [METADATA_KEY_VALUE_PAIRS] ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio Escritor para crear un secreto de clave-valor.
Opciones de comando
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Crear o actualizar la carga útil de un secreto de clave-valor.
vault kv metadata put -custom-metadata=key1=value1 -custom-metadata=key2=value2 ibmcloud/kv/mysecret
Crear o actualizar la carga útil de un secreto de clave-valor en un grupo personalizado.
vault kv metadata put -custom-metadata=key1=value1 -custom-metadata=key2=value2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/mysecret
Salida
El mandato para crear una nueva versión de un secreto de kv devuelve la salida siguiente:
Key Value
--- -----
created_time 2022-03-08T18:32:43.610242127Z
deletion_time n/a
destroyed false
version 2
Leer metadatos del secreto de clave-valor
Obtener los metadatos de un secreto de clave-valor.
vault kv metadata get ibmcloud/kv/SECRET_NAME
Obtener los metadatos de un secreto de clave-valor en un grupo personalizado.
vault kv metadata get ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio Lector o Escritor para leer los metadatos de los secretos de clave-valor.
Opciones de comando
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Leer los metadatos del secreto de clave-valor.
vault kv metadata get ibmcloud/kv/my-test-kv-secret
Leer los metadatos de un secreto clave-valor en un grupo personalizado.
vault kv metadata get ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para leer los metadatos de un secreto de kv devuelve la salida siguiente:
========== Metadata ==========
Key Value
--- -----
cas_required false
created_time 2022-03-04T17:08:34.406336489Z
current_version 3
custom_metadata map[key1:value1 key2:value2]
delete_version_after 0s
max_versions 10
oldest_version 0
updated_time 2022-03-08T20:06:39.585190049Z
====== Version 1 ======
Key Value
--- -----
created_time 2022-03-04T17:08:34.406336489Z
deletion_time n/a
destroyed true
====== Version 2 ======
Key Value
--- -----
created_time 2022-03-08T18:32:43.610242127Z
deletion_time 2022-03-08T20:05:08.850704454Z
destroyed false
====== Version 3 ======
Key Value
--- -----
created_time 2022-03-08T20:06:39.585190049Z
deletion_time n/a
destroyed false
Suprimir los metadatos y todas las versiones de un secreto de clave-valor
Suprima de forma permanente los metadatos y todos los datos de versión de un secreto de clave-valor especificado. Todo el historial de versiones se elimina cuando se utiliza este mandato.
vault kv metadata delete ibmcloud/kv/SECRET_NAME
vault kv metadata delete ibmcloud/kv/GROUP_ID/SECRET_NAME
Requisitos previos
Necesita el rol de servicio Gestor para suprimir los metadatos de los secretos de clave-valor.
Opciones de comando
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Suprimir permanentemente los datos y los metadatos de un secreto de clave-valor.
vault kv metadata delete ibmcloud/kv/my-test-kv-secret
Suprimir permanentemente los datos y los metadatos de un secreto de clave-valor en un grupo de secretos personalizados.
vault kv metadata delete ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret
Salida
El mandato para leer los metadatos de un secreto de kv devuelve la salida siguiente:
Success! Data deleted (if it existed) at: ibmcloud/kv/metadata/my-test-kv-secret
Listar nombres de clave de un secreto de clave-valor
Obtenga una lista de nombres de clave de un secreto de clave-valor. No codifique información confidencial en nombres de claves. No se puede acceder a los valores de las claves utilizando este mandato.
vault kv list ibmcloud/kv
Lista los nombres de clave de los secretos de clave-valor que se almacenan en un grupo de secretos personalizado.
vault kv list ibmcloud/kv/GROUP_ID
Requisitos previos
Necesita el rol de servicio Lector o Escritor para leer los nombres de clave de los secretos de clave-valor.
Opciones de comando
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Lista los nombres clave de los secretos de clave-valor que se almacenan en el grupo de secretos default.
vault kv list ibmcloud/kv
Lista los nombres de clave de los secretos de clave-valor que se almacenan en un grupo de secretos personalizado.
vault kv list ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8
Salida
El mandato para listar nombres de clave de un secreto de kv devuelve la salida siguiente:
Keys
----
my-updated-kv-secret
Aplicar un parche a un secreto de valor de clave
Parchea una versión de un secreto clave-valor.
vault kv patch [-format=FORMAT] ibmcloud/kv/SECRET_NAME [KEY_VALUE_PAIRS]
Crear una versión de un secreto de clave-valor en un grupo personalizado.
vault kv patch [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME [KEY_VALUE_PAIRS]
Requisitos previos
Necesita el rol de servicio Escritor para crear un secreto de clave-valor.
Opciones de comando
- -format
- Muestra la salida en el formato que especifique. Los formatos válidos son
table,jsonyyaml. El valor predeterminado estable. También puede establecer el formato de salida utilizando la variable de entornoVAULT_FORMAT.
Ejemplo
Crear o actualizar la carga útil de un secreto de clave-valor.
vault kv patch ibmcloud/kv/example-kv-secret key1=value1 key2=value2
Crear o actualizar la carga útil de un secreto de clave-valor en un grupo personalizado.
vault kv patch ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/example-kv-secret key1=value1 key2=value2
Salida
El mandato para crear una nueva versión de un secreto de kv devuelve la salida siguiente:
Key Value
--- -----
created_time 2022-03-08T18:32:43.610242127Z
deletion_time n/a
destroyed false
version 2