La risposta precedente di Shengbao Shui mostra il comando per archiviare un segreto usando l'interfaccia della riga di comando 1.0 di Azure (Nodo). Per l' interfaccia della riga di comando di Azure 2.0 (Python) usare la sintassi seguente:
Imposta / Memorizza chiave:
az keyvault secret set --vault-name 'myvault' -n 'secret-name' -f '~/.ssh/id_rsa'
Argomenti:
Arguments
--name -n [Required]: Name of the secret.
--vault-name [Required]: Name of the key vault.
--description : Description of the secret contents (e.g. password, connection string,
etc).
--disabled : Create secret in disabled state. Allowed values: false, true.
--expires : Expiration UTC datetime (Y-m-d'T'H:M:S'Z').
--not-before : Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z').
--tags : Space-separated tags in 'key[=value]' format. Use '' to clear existing
tags.
Content Source Arguments
--encoding -e : Source file encoding. The value is saved as a tag (`file-
encoding=<val>`) and used during download to automatically encode the
resulting file. Allowed values: ascii, base64, hex, utf-16be,
utf-16le, utf-8. Default: utf-8.
--file -f : Source file for secret. Use in conjunction with '--encoding'.
--value : Plain text secret value. Cannot be used with '--file' or '--encoding'.
Global Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default:
json.
--query : JMESPath query string. See http://jmespath.org/ for more information
and examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
Recupera / Ottieni chiave:
Salvare la chiave in un file ~/.ssh/mykey
usando l'utilità jq.
az keyvault secret show --vault-name myvault --name 'secret-name' | jq -r .value > ~/.ssh/mykey
I file possono essere stampati con una nuova riga finale, che è possibile rimuovere con una riga perl:
perl -pi -e 'chomp if eof' ~/.ssh/mykey
# Set permissions to user-read only
chmod 600 ~/.ssh/mykey
Genera la chiave pubblica dal file della chiave privata ...
ssh-keygen -y -f ~/.ssh/myfile > ~/.ssh/myfile.pub