提取 hashicorp 保险库机密作为 ansible 剧本中的值
extract hashicorp vault secrets as values in ansible playbook
我正在尝试使用 hashi_vault 模块从 ansible 剧本中的 kv2 hashicorp 保险库中提取特定值
- name: Return specific value from vault
ansible.builtin.set_fact:
secret: "{{ lookup('hashi_vault', 'secret=my.secrets/data/dev/heslo:value token=vault-plaintext-root-token url=http://10.47.0.235:8200/')}}" register: secret
我得到
{"msg": ""An unhandled exception occurred while running the lookup plugin 'hashi_vault'. Error was a <class 'ansible.errors.AnsibleError'>, original message: The secret my.secrets/data/dev/heslo doesn't seem to exist for hashi_vault lookup"}
查询适用于使用
的路径中的所有机密
secret=my.secrets/data/dev/
路径中存在“heslo”记录
"ansible_facts": {
"secret": {
"data": {
"heslo": "heslo",
"password": "test",
"username": "ahoj"
},
提前致谢
lookup
的语法适用于 KV1 引擎。我们可以为 KV2 秘密引擎更新它:
- name: Return specific value from vault
ansible.builtin.set_fact:
secret: "{{ lookup('hashi_vault', 'secret=my.secrets/data/dev token=vault-plaintext-root-token url=http://10.47.0.235:8200/') }}"
secret
事实将成为一个字典,其中包含指定机密路径 my.secrets/data/dev
中的所有键值对。您可以使用正常语法 secret['heslo']
.
访问键 heslo
的值
最后,您可能还想更新到 Vault collection for Ansible,使其具有所有新功能。
我正在尝试使用 hashi_vault 模块从 ansible 剧本中的 kv2 hashicorp 保险库中提取特定值
- name: Return specific value from vault
ansible.builtin.set_fact:
secret: "{{ lookup('hashi_vault', 'secret=my.secrets/data/dev/heslo:value token=vault-plaintext-root-token url=http://10.47.0.235:8200/')}}" register: secret
我得到
{"msg": ""An unhandled exception occurred while running the lookup plugin 'hashi_vault'. Error was a <class 'ansible.errors.AnsibleError'>, original message: The secret my.secrets/data/dev/heslo doesn't seem to exist for hashi_vault lookup"}
查询适用于使用
的路径中的所有机密secret=my.secrets/data/dev/
路径中存在“heslo”记录
"ansible_facts": {
"secret": {
"data": {
"heslo": "heslo",
"password": "test",
"username": "ahoj"
},
提前致谢
lookup
的语法适用于 KV1 引擎。我们可以为 KV2 秘密引擎更新它:
- name: Return specific value from vault
ansible.builtin.set_fact:
secret: "{{ lookup('hashi_vault', 'secret=my.secrets/data/dev token=vault-plaintext-root-token url=http://10.47.0.235:8200/') }}"
secret
事实将成为一个字典,其中包含指定机密路径 my.secrets/data/dev
中的所有键值对。您可以使用正常语法 secret['heslo']
.
heslo
的值
最后,您可能还想更新到 Vault collection for Ansible,使其具有所有新功能。