ACIL FM
Dark
Refresh
Current DIR:
/usr/share/ansible/collections/ansible_collections/community/general/plugins/lookup
/
usr
share
ansible
collections
ansible_collections
community
general
plugins
lookup
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
bitwarden.py
6.05 MB
chmod
View
DL
Edit
Rename
Delete
bitwarden_secrets_manager.py
4.22 MB
chmod
View
DL
Edit
Rename
Delete
cartesian.py
2.72 MB
chmod
View
DL
Edit
Rename
Delete
chef_databag.py
3.37 MB
chmod
View
DL
Edit
Rename
Delete
collection_version.py
4.81 MB
chmod
View
DL
Edit
Rename
Delete
consul_kv.py
6.57 MB
chmod
View
DL
Edit
Rename
Delete
credstash.py
4.84 MB
chmod
View
DL
Edit
Rename
Delete
cyberarkpassword.py
6.33 MB
chmod
View
DL
Edit
Rename
Delete
dependent.py
8.75 MB
chmod
View
DL
Edit
Rename
Delete
dig.py
18.09 MB
chmod
View
DL
Edit
Rename
Delete
dnstxt.py
3.45 MB
chmod
View
DL
Edit
Rename
Delete
dsv.py
4.38 MB
chmod
View
DL
Edit
Rename
Delete
etcd.py
5.19 MB
chmod
View
DL
Edit
Rename
Delete
etcd3.py
7.3 MB
chmod
View
DL
Edit
Rename
Delete
filetree.py
7.27 MB
chmod
View
DL
Edit
Rename
Delete
flattened.py
3.35 MB
chmod
View
DL
Edit
Rename
Delete
hiera.py
2.8 MB
chmod
View
DL
Edit
Rename
Delete
keyring.py
2.14 MB
chmod
View
DL
Edit
Rename
Delete
lastpass.py
3.15 MB
chmod
View
DL
Edit
Rename
Delete
lmdb_kv.py
3.75 MB
chmod
View
DL
Edit
Rename
Delete
manifold.py
10.61 MB
chmod
View
DL
Edit
Rename
Delete
merge_variables.py
6.92 MB
chmod
View
DL
Edit
Rename
Delete
onepassword.py
24.45 MB
chmod
View
DL
Edit
Rename
Delete
onepassword_raw.py
4.72 MB
chmod
View
DL
Edit
Rename
Delete
passwordstore.py
20.61 MB
chmod
View
DL
Edit
Rename
Delete
random_pet.py
2.85 MB
chmod
View
DL
Edit
Rename
Delete
random_string.py
8.15 MB
chmod
View
DL
Edit
Rename
Delete
random_words.py
3.72 MB
chmod
View
DL
Edit
Rename
Delete
redis.py
3.44 MB
chmod
View
DL
Edit
Rename
Delete
revbitspss.py
3.31 MB
chmod
View
DL
Edit
Rename
Delete
shelvefile.py
2.95 MB
chmod
View
DL
Edit
Rename
Delete
tss.py
14.87 MB
chmod
View
DL
Edit
Rename
Delete
Edit file: /usr/share/ansible/collections/ansible_collections/community/general/plugins/lookup/dsv.py
# -*- coding: utf-8 -*- # Copyright (c) 2020, Adam Migus <adam@migus.org> # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later from __future__ import absolute_import, division, print_function __metaclass__ = type DOCUMENTATION = r""" name: dsv author: Adam Migus (@amigus) <adam@migus.org> short_description: Get secrets from Thycotic DevOps Secrets Vault version_added: 1.0.0 description: - Uses the Thycotic DevOps Secrets Vault Python SDK to get Secrets from a DSV O(tenant) using a O(client_id) and O(client_secret). requirements: - python-dsv-sdk - https://pypi.org/project/python-dsv-sdk/ options: _terms: description: The path to the secret, for example V(/staging/servers/web1). required: true tenant: description: The first format parameter in the default O(url_template). env: - name: DSV_TENANT ini: - section: dsv_lookup key: tenant required: true tld: default: com description: The top-level domain of the tenant; the second format parameter in the default O(url_template). env: - name: DSV_TLD ini: - section: dsv_lookup key: tld required: false client_id: description: The client_id with which to request the Access Grant. env: - name: DSV_CLIENT_ID ini: - section: dsv_lookup key: client_id required: true client_secret: description: The client secret associated with the specific O(client_id). env: - name: DSV_CLIENT_SECRET ini: - section: dsv_lookup key: client_secret required: true url_template: default: https://{}.secretsvaultcloud.{}/v1 description: The path to prepend to the base URL to form a valid REST API request. env: - name: DSV_URL_TEMPLATE ini: - section: dsv_lookup key: url_template required: false """ RETURN = r""" _list: description: - One or more JSON responses to C(GET /secrets/{path}). - See U(https://dsv.thycotic.com/api/index.html#operation/getSecret). type: list elements: dict """ EXAMPLES = r""" - hosts: localhost vars: secret: "{{ lookup('community.general.dsv', '/test/secret') }}" tasks: - ansible.builtin.debug: msg: 'the password is {{ secret["data"]["password"] }}' """ from ansible.errors import AnsibleError, AnsibleOptionsError sdk_is_missing = False try: from thycotic.secrets.vault import ( SecretsVault, SecretsVaultError, ) except ImportError: sdk_is_missing = True from ansible.utils.display import Display from ansible.plugins.lookup import LookupBase display = Display() class LookupModule(LookupBase): @staticmethod def Client(vault_parameters): try: vault = SecretsVault(**vault_parameters) return vault except TypeError: raise AnsibleError("python-dsv-sdk==0.0.1 must be installed to use this plugin") def run(self, terms, variables, **kwargs): if sdk_is_missing: raise AnsibleError("python-dsv-sdk==0.0.1 must be installed to use this plugin") self.set_options(var_options=variables, direct=kwargs) vault = LookupModule.Client( { "tenant": self.get_option("tenant"), "client_id": self.get_option("client_id"), "client_secret": self.get_option("client_secret"), "tld": self.get_option("tld"), "url_template": self.get_option("url_template"), } ) result = [] for term in terms: display.debug("dsv_lookup term: %s" % term) try: path = term.lstrip("[/:]") if path == "": raise AnsibleOptionsError("Invalid secret path: %s" % term) display.vvv(u"DevOps Secrets Vault GET /secrets/%s" % path) result.append(vault.get_secret_json(path)) except SecretsVaultError as error: raise AnsibleError( "DevOps Secrets Vault lookup failure: %s" % error.message ) return result
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply