Comments (2)
I tried with something like
for t in terms[0]:
entry_path = t.get('path').strip('/')
entry_attr = t.get('variable')
# entry getting code here
And using something like
keepass_dict:
- username:
path: 'path/to/entry'
variable: 'username'
- password:
path: 'path/to/entry'
variable: 'password'
- become:
path: 'path/to/entry'
variable: password
ansible_user: "{{ lookup('keepass',keepass_dict)}}"
This lacks the yml side of handling the returning array or dict, whichever is gonna be returned.
This seems to work but it would change the original purpose of the file too much so it would perhaps need to be and option somehow. My knowledge of python is lacking to do it the right way.
from ansible-keepass.
There are two ways to use this plugin - without and with a UNIX socket (see README).
-
If you use the plugin without a UNIX socket, you will not be able to keep Keepass file decrypted, because for each playbook task Ansible runs this plugin as a new instance.
Now PyKeePass object stored in a global variable for decrease time consumption (one file open for one task) compared to the previous version. But it not resolve the issue. -
If you will use UNIX sockets, you can keep Keepass file decrypted while the socket is open. I considered this variant as a bad idea for security reasons and programmed to close the database after each request. I agree that this is a bad option for performance. I rewrote this part of the code and reduced the default socket TTL to 1 minute. Now, while the socket is open, the Keepass file is always in decrypted state.
from ansible-keepass.
Related Issues (20)
- Entry <name> not found HOT 2
- python-pykeepass 4.0.0 HOT 2
- global name 'FileNotFoundError' HOT 1
- FileNotFoundError: [Errno 2] No such file or directory: '/tmp/ansible-keepass-6d5c20be.sock' HOT 20
- Plugin does not suppport lookup of properties/attributes with several lines HOT 5
- Add module to collection for writing attachments to file system HOT 5
- Password shall not be mandatory for opening the db
- KeePass: socket connection failed when used in parallel HOT 2
- backslashes are being escaped in password HOT 2
- Concurrent access on testing socket file and creating associated process HOT 7
- Using a kbdx over https HOT 1
- Socket location HOT 2
- Temp files should be in tmpfs HOT 4
- Support for database editting HOT 3
- Implementation as cache plugin HOT 6
- Unable to get attachments HOT 1
- custom_properties - long chain are truncated
- Search for DB entry by title/url + regex HOT 4
- Recover the attachment contents directly HOT 1
- python-pykeepass v4.0.7 - No module named 'pykeepass.kdbx_parsing'" HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ansible-keepass.