Ansible : Vault
Ansible vault provides a simple way to encrypt secrets, so you don't expose sensitive data in your playbooks.
oracle miscconfigurationintermediate
by OracleDba
12 views
Ansible vault provides a simple way to encrypt secrets, so you don't expose sensitive data in your playbooks.
12345678910111213141516171819202122232425262728293031
$ ansible-vault create my_vault.yml
New Vault password:
Confirm New Vault password:
$
cdb1_sys_password: SysPassword1
$ cat my_vault.yml
$ANSIBLE_VAULT;1.1;AES256
32306533393532303233373461376533356462613038353439333630346361383833313034373136
3336653332623837366233313662613464376266626637610a363339326237666465663937306433
30373131353331306261373365383562303263386535663264306437326330373035393138383435
3535316163333938320a356237663131656533373066626334303333363233366161333564343031
61306530633063363237646334653835636261373638663465353662353133316439366436303466
3439353036356638666465646133326461363137643566633363
$
$ ansible-vault view my_vault.yml
Vault password:
cdb1_sys_password: SysPassword1
$
$ ansible-vault edit my_vault.yml
Vault password:
$
$ ansible-vault view my_vault.yml
Vault password:
cdb1_sys_password: SysPassword1
testuser1: testuser1pwd
$12345678910111213141516171819202122232425
cdb1_sys_password: SysPassword1
testuser1: testuser1pwd
$ ansible-vault encrypt my_vault_2.yml
New Vault password:
Confirm New Vault password:
Encryption successful
$
$ cat my_vault_2.yml
$ANSIBLE_VAULT;1.1;AES256
65363365363962363166366138356564323231633065356536373864623863393663646333393433
3736303366356336376531343337653839383465656138300a346633663466333432393833383935
37333564316366323865613236623461316336623865376533353730626135623861653438306335
6631316633383032300a393435633938623365333362356437653133383934373863333130353664
36323335623037633566323332346534633533366431313939323035636465636633363035646230
34663466323432666561353563356635613561383965303130623735623837646639663136666533
303166633532646630343139303237396132
$
$ ansible-vault view my_vault_2.yml
Vault password:
cdb1_sys_password: SysPassword1
testuser1: testuser1pwd
$123456789
$ ansible-vault decrypt my_vault_2.yml
Vault password:
Decryption successful
$
$ cat my_vault_2.yml
cdb1_sys_password: SysPassword1
testuser1: testuser1pwd
$123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
---
- name: Use vault variables
hosts: databases
tasks:
- name: Show vault variable value
debug:
var: cdb1_sys_password
$ ansible-playbook vault_variables.yml
PLAY [Use vault variables] *********************************************************************************************************************
TASK [Gathering Facts] *************************************************************************************************************************
ok: [database1.localdomain]
TASK [Show vault variable value] ***************************************************************************************************************
ok: [database1.localdomain] => {
"cdb1_sys_password": "VARIABLE IS NOT DEFINED!"
}
PLAY RECAP *************************************************************************************************************************************
database1.localdomain : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
$
$ ansible-playbook vault_variables.yml -e @my_vault.yml --ask-vault-pass
Vault password:
PLAY [Use vault variables] *********************************************************************************************************************
TASK [Gathering Facts] *************************************************************************************************************************
ok: [database1.localdomain]
TASK [Show vault variable value] ***************************************************************************************************************
ok: [database1.localdomain] => {
"cdb1_sys_password": "SysPassword1"
}
PLAY RECAP *************************************************************************************************************************************
database1.localdomain : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
$
---
- name: Use vault variables
hosts: databases
vars_files: my_vault.yml
tasks:
- name: Show vault variable value
debug:
var: cdb1_sys_password
$ ansible-playbook vault_variables_2.yml --ask-vault-pass
Vault password:
PLAY [Use vault variables] *********************************************************************************************************************
TASK [Gathering Facts] *************************************************************************************************************************
ok: [database1.localdomain]
TASK [Show vault variable value] ***************************************************************************************************************
ok: [database1.localdomain] => {
"cdb1_sys_password": "SysPassword1"
}
PLAY RECAP *************************************************************************************************************************************
database1.localdomain : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
$Please to add comments
No comments yet. Be the first to comment!