Gestione dei segreti di valore chiave con Vault CLI

Se si usa già HashiCorp Vault, si può usare l'interfaccia a riga di comando (CLI) per interagire con IBM Cloud® Secrets Manager e gestire i segreti chiave-valore. Tutte le operazioni seguono le linee guida disponibili per il Vault CLI.

Secrets Manager supporta i comandi CLI di HashiCorp Vault KV Secrets Engine Versione 2. Per ulteriori informazioni sulla CLI di KV v2, consultare il sito Documentazione del Vault KV v2.

Prima di iniziare, configurare la CLI di Vault in modo da poter accedere alla propria istanza Secrets Manager utilizzando i comandi Vault. Per saperne di più sull'utilizzo del Vault CLI, consulta la documentazione Vault.

Per utilizzare la CLI standard per Secrets Manager, controllare il Secrets Manager CLI di riferimento.

Creare o aggiornare un segreto di valore chiave

Creare una versione di un segreto di valore chiave.

vault kv put [-format=FORMAT] ibmcloud/kv/SECRET_NAME [KEY_VALUE_PAIRS]

Creare una versione di un segreto di valore chiave in un gruppo personalizzato.

vault kv put [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME [KEY_VALUE_PAIRS]

Prerequisiti

È necessario il ruolo di servizio Writer per creare un segreto di valore chiave.

Opzioni comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Creare o aggiornare il payload di un segreto di valore chiave.

vault kv put ibmcloud/kv/example-kv-secret key1=value1 key2=value2

Creare o aggiornare il payload di un segreto di valore chiave in un gruppo personalizzato.

vault kv put ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/example-kv-secret key1=value1 key2=value2

Output

Il comando per creare una nuova versione di un segreto kv restituisce la seguente output:

Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    n/a
destroyed        false
version          2

Leggi una versione di un segreto - valore - valore

Ottenere una versione di un segreto a valore-chiave. Una richiesta di successo restituisce i dati segreti associati alla versione specificata del tuo segreto, insieme ad altri metadati.

vault kv get [-version=VERSION] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

Ottenere una versione di un segreto di valore chiave in un gruppo personalizzato.

vault kv get [-version=VERSION] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Reader o Writer per leggere le versioni dei segreti di valore chiave.

Opzioni comando

-version
La versione che si desidera leggere. Se omesso, viene restituita l'ultima versione.
- formato
Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Leggi una versione di un segreto di valore chiave.

vault kv get -version=1 ibmcloud/kv/my-test-kv-secret

Leggi una versione di un segreto di valore chiave in un gruppo personalizzato.

vault kv get -version=1 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per leggere una versione di un segreto kv restituisce la seguente emissione:

====== Metadata ======
Key              Value
---              -----
created_time     2022-03-04T17:08:34.406336489Z
deletion_time    n/a
destroyed        false
version          1

==== Data ====
Key     Value
---     -----
key1    value1

Elimina l'ultima versione di un segreto di valore chiave

Eliminare l'ultima versione di un segreto di valore chiave. È possibile annullare l'eliminazione chiamando il comando undelete.

vault kv delete [-format=FORMAT] ibmcloud/kv/SECRET_NAME

Eliminare l'ultima versione di un segreto di valore chiave in un gruppo personalizzato.

vault kv delete [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Gestore per eliminare i segreti di valore chiave.

Opzione del comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Eliminare l'ultima versione di un segreto di valore chiave.

vault kv delete -format=json ibmcloud/kv/my-test-kv-secret

Eliminare l'ultima versione di un segreto di valore chiave in un gruppo personalizzato.

vault kv delete -format=json ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per eliminare l'ultima versione di un segreto kv non restituisce alcun output.

Eliminare le versioni specificate di un segreto di valore chiave

Eliminare le versioni specificate di un segreto di valore chiave. È possibile annullare l'eliminazione chiamando il comando undelete.

vault kv delete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

Eliminare le versioni specificate di un segreto di valore chiave in un gruppo personalizzato.

vault kv delete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Gestore per eliminare i segreti di valore chiave.

Opzioni comando

  • versioni : Le versioni che si desidera eliminare.

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Eliminare le versioni specificate di un segreto di valore chiave.

vault kv delete -versions=2 ibmcloud/kv/my-test-kv-secret

Eliminare le versioni specificate di un segreto di valore chiave in un gruppo personalizzato.

vault kv delete -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per eliminare le versioni specificate di un segreto kv non restituisce alcun output.

Eliminare un segreto di valore chiave

Ripristinare una versione precedentemente cancellata di un segreto di valore chiave.

vault kv undelete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

Ripristinare una versione precedentemente cancellata di un segreto di valore chiave in un gruppo personalizzato.

vault kv undelete [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Gestore per ripristinare i segreti.

Opzioni comando

  • versioni : Le versioni che si desidera eliminare.

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Annullare le versioni specificate di un segreto di valore chiave.

vault kv undelete -versions=2 ibmcloud/kv/my-test-kv-secret

Annullare le versioni specificate di un segreto di valore chiave.

vault kv undelete -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per annullare le versioni specificate di un segreto kv restituisce la seguente emissione:

Success! Data written to: ibmcloud/kv/undelete/my-test-kv-secret

Distruggere le versioni di un segreto

Distruiche le versioni specificate di un segreto di valore chiave in modo permanente. Alle soft delete versioni di un segreto invece, utilizzare il comando elimina le versioni specificate.

vault kv destroy [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/SECRET_NAME

Distruiche le versioni specificate di un segreto di valore chiave in un gruppo personalizzato.

vault kv destroy [-versions=VERSIONS] [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Gestore per eliminare i segreti.

Opzioni comando

  • versioni : Le versioni che si vogliono distruggere.

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Elimina le versioni specificate in modo permanente di un segreto di valore chiave.

vault kv destroy -versions=2 ibmcloud/kv/my-test-kv-secret

Eliminare definitivamente le versioni specificate di un segreto di valore chiave in un gruppo personalizzato.

vault kv destroy -versions=2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per distruggere le versioni di un segreto kv restituisce la seguente emissione:

Success! Data written to: ibmcloud/kv/undelete/my-test-kv-secret

Creare o aggiornare i metadati chiave - valore segreto

Creare o aggiornare i metadati di un segreto di valore chiave.

vault kv metadata put [-format=FORMAT] [METADATA_KEY_VALUE_PAIRS] ibmcloud/kv/SECRET_NAME

Creare o aggiornare i metadati di un segreto di valore chiave in un gruppo personalizzato.

vault kv metadata put [-format=FORMAT] [METADATA_KEY_VALUE_PAIRS] ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Writer per creare un segreto di valore chiave.

Opzioni comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Creare o aggiornare il payload di un segreto di valore chiave.

vault kv metadata put -custom-metadata=key1=value1 -custom-metadata=key2=value2 ibmcloud/kv/mysecret

Creare o aggiornare il payload di un segreto di valore chiave in un gruppo personalizzato.

vault kv metadata put -custom-metadata=key1=value1 -custom-metadata=key2=value2 ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/mysecret

Output

Il comando per creare una nuova versione di un segreto kv restituisce la seguente output:

Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    n/a
destroyed        false
version          2

Leggi i metadati del segreto - valore chiave

Ottimi i metadati di un segreto di valore.

vault kv metadata get ibmcloud/kv/SECRET_NAME

Ottenere i metadati di un segreto di valore chiave in un gruppo personalizzato.

vault kv metadata get ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Reader o Writer per leggere i metadati dei segreti di valore chiave.

Opzioni comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Leggi i metadati di un segreto di valore chiave.

vault kv metadata get ibmcloud/kv/my-test-kv-secret

Leggi i metadati di un segreto di valore chiave in un gruppo personalizzato.

vault kv metadata get ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per leggere i metadati di un segreto kv restituisce la seguente emissione:

========== 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

Eliminare i metadati e tutte le versioni di un segreto - valore - valore

Eliminare definitivamente i metadati e tutti i dati di versione di un segreto - valore chiave specificato. Tutta la cronologia delle versioni viene rimossa quando si utilizza questo comando.

vault kv metadata delete ibmcloud/kv/SECRET_NAME
vault kv metadata delete ibmcloud/kv/GROUP_ID/SECRET_NAME

Prerequisiti

È necessario il ruolo di servizio Gestore per eliminare i metadati dei segreti di valore chiave.

Opzioni comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Elimina in modo permanente i dati e i metadati di un segreto di valore chiave.

vault kv metadata delete ibmcloud/kv/my-test-kv-secret

Elimina in modo permanente i dati e i metadati di un segreto di valore chiave in un gruppo segreto personalizzato.

vault kv metadata delete ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/my-test-kv-secret

Output

Il comando per eliminare i metadati di un segreto kv restituisce la seguente emissione:

Success! Data deleted (if it existed) at: ibmcloud/kv/metadata/my-test-kv-secret

Elencare i nomi chiave di un segreto - valore chiave

Ottimi un elenco di nomi chiave di un segreto di valore chiave. Non codificare informazioni sensibili in nomi chiave. I valori delle chiavi non sono accessibili utilizzando questo comando.

vault kv list ibmcloud/kv

Elencare i nomi chiave dei segreti di valore chiave che vengono memorizzati in un gruppo segreto personalizzato.

vault kv list ibmcloud/kv/GROUP_ID

Prerequisiti

È necessario il ruolo di servizio Reader o Writer per leggere i nomi chiave dei segreti di valore chiave.

Opzioni comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Elencare i nomi chiave dei segreti di valore chiave che vengono memorizzati nel gruppo segreto default.

vault kv list ibmcloud/kv

Elencare i nomi chiave dei segreti di valore chiave che vengono memorizzati in un gruppo segreto personalizzato.

vault kv list ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8

Output

Il comando per elencare i nomi chiave di un segreto kv restituisce la seguente emissione:

Keys
----
my-updated-kv-secret

Patch un segreto - valore chiave

Patch una versione di un segreto di valore chiave.

vault kv patch [-format=FORMAT] ibmcloud/kv/SECRET_NAME [KEY_VALUE_PAIRS]

Creare una versione di un segreto di valore chiave in un gruppo personalizzato.

vault kv patch [-format=FORMAT] ibmcloud/kv/GROUP_ID/SECRET_NAME [KEY_VALUE_PAIRS]

Prerequisiti

È necessario il ruolo di servizio Writer per creare un segreto di valore chiave.

Opzioni comando

  • formato : Stampa l'output nel formato specificato. I formati validi sono table, json e yaml. L'impostazione predefinita è table. È anche possibile impostare il formato di output utilizzando la variabile di ambiente VAULT_FORMAT.

Esempio

Creare o aggiornare il payload di un segreto di valore chiave.

vault kv patch ibmcloud/kv/example-kv-secret key1=value1 key2=value2

Creare o aggiornare il payload di un segreto di valore chiave in un gruppo personalizzato.

vault kv patch ibmcloud/kv/9426e546-83de-4da5-9631-d70c993186c8/example-kv-secret key1=value1 key2=value2

Output

Il comando per creare una nuova versione di un segreto kv restituisce la seguente output:

Key              Value
---              -----
created_time     2022-03-08T18:32:43.610242127Z
deletion_time    n/a
destroyed        false
version          2