{"id":13560698,"url":"https://github.com/Orange-OpenSource/keepass-vault-sync-plugin","last_synced_at":"2025-04-03T16:30:59.202Z","repository":{"id":33903065,"uuid":"133472004","full_name":"Orange-OpenSource/keepass-vault-sync-plugin","owner":"Orange-OpenSource","description":"Keepass plugin to synchronize Hashicorp Vault secrets","archived":true,"fork":false,"pushed_at":"2022-06-22T16:41:01.000Z","size":73,"stargazers_count":81,"open_issues_count":9,"forks_count":13,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-11-04T12:39:57.135Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Orange-OpenSource.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-05-15T06:51:06.000Z","updated_at":"2024-10-30T08:33:16.000Z","dependencies_parsed_at":"2022-09-20T16:41:57.627Z","dependency_job_id":null,"html_url":"https://github.com/Orange-OpenSource/keepass-vault-sync-plugin","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Fkeepass-vault-sync-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Fkeepass-vault-sync-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Fkeepass-vault-sync-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Orange-OpenSource%2Fkeepass-vault-sync-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Orange-OpenSource","download_url":"https://codeload.github.com/Orange-OpenSource/keepass-vault-sync-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247036923,"owners_count":20873048,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T13:00:48.773Z","updated_at":"2025-04-03T16:30:58.751Z","avatar_url":"https://github.com/Orange-OpenSource.png","language":"C#","funding_links":[],"categories":["C# #","C#"],"sub_categories":[],"readme":"# License\n\nDevelopped at Orange Business Services under LGPL-2.1. See [LICENSE](LICENSE).\n\n# How to use\n\n## Pre-requisites\n\nThis plugin requires .NET Framework 4.6 minimum, you can download the latest version from [Microsoft website](https://dotnet.microsoft.com/download).\n\nFor Linux users, you need to install the latest `mono-complete` package.\n\n## Usage\n\n1. Download the [latest PLGX file](https://github.com/Orange-OpenSource/keepass-vault-sync-plugin/releases) and copy it in the KeePass installation folder, in plugins directory\n   * For Windows it's in `C:\\Program Files (x86)\\KeePass Password Safe 2\\Plugins`\n   * For Linux it's in `/usr/lib/keepass2/Plugins`\n2. Open your database\n3. Create an entry with name starting with `vault`. For example: `vault-personal-folder`\n    * Username is the username used to authenticate on Vault\n    * Password is the password used to authenticate on Vault\n    * URL is the Vault Backend URL (port included). For example: `https://local-vault:8200`\n    * In Advanced tab add the following String fields:\n      * `auth` field contains the auth path. For basic Vault authentication, it should be `username`. For LDAP authentication, it should be the LDAP name.\n      * `path` field contains the path to synchronize. Any secret in this path will be synchronized, recursively.\n4. Click on *Tools -\u003e Synchronize Vault entries*. Synchronization may take a while, since Vault API is really not designed for this kind of use case.\n5. A folder named with your entry name followed by the date and time timestamp will be created. If the entry was previously synchronized, the previous folder won't be deleted.\n6. You can save your database. The plugin won't do it for you.\n7. For now, there is no error message in case of issue. Only the lack of synchronization will be a symptom of issue. It may be improved in future versions. If needed.\n\n# Why these release names?\n\n* Because release themes are cheap but are a small pleasure in release process\n* Because it helps structuring releases\n* Because why not?\n* Because [Vault](https://en.wikipedia.org/wiki/Vault_\\(comics\\)), so [Release Theme](https://fr.wikipedia.org/wiki/Cat%C3%A9gorie:Super-vilain_Marvel)\n\n# How to build\n\n1. Get the dependencies listed [here](external/Readme.md)\n1. Modify the version in both AssemblyInfo and KeepassPluginVersion.txt\n1. Build the solution, targetting `Release PLGX`\n1. The file is generated in VaultSyncPlugin/bin/ReleasePlgx/VaultSyncPlugin.plgx\n\nFor some reason, the execution of plgxtool can fail. The quick workaround consists in running the command directly in bash from the VaultSyncPlugin project folder.\n\n# How to test\n\nThis part could be improved. For now, there are is one integration test, with minimal assertion.\nOn first run, a `secrets.json` file will be generated, containing the needed values to be modified for the test to run.\nSince it contains sensitive data, this file is gitignored. But you should check regularly that it's not committed.\n\n# Library used\n\n* [KeePass](https://keepass.info) for plugin API (GPL-2.0)\n* [Vault.NET](https://github.com/Chatham/Vault.NET) for Vault API C# wrapping (MIT)\n* [PlgxTool](https://github.com/dlech/KeePassPluginDevTools) for PLGX generation (GPL-2.0)\n* [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) as dependency of Vault.NET (MIT)\n* A bunch of .NET extension libraries, as dependencies of dependencies, from .NET framework 4.6 or Microsoft libraries on nuget (Apache 2 and MIT, depends on the lib/framework)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FOrange-OpenSource%2Fkeepass-vault-sync-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FOrange-OpenSource%2Fkeepass-vault-sync-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FOrange-OpenSource%2Fkeepass-vault-sync-plugin/lists"}