mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2024-12-31 18:26:20 -05:00
596d2cf425
Replaces all string configuration options with enum types that can be checked by the compiler. This prevents spelling errors, in-place configuration definitions, and inconsistent default values. The default value config getter signature was removed in favour of consistently and centrally default-initialised configuration values. Individual default values were adjusted for better security, such as the default password length, which was increased from 16 characters to 32. The already existing config option deprecation map was extended by a general migration procedure using configuration versioning. Settings were split into Roaming and Local settings, which go to their respective AppData locations on Windows. Fixes #2574 Fixes #2193 |
||
---|---|---|
.. | ||
objects | ||
widgets | ||
CMakeLists.txt | ||
DatabaseSettingsPageFdoSecrets.cpp | ||
DatabaseSettingsPageFdoSecrets.h | ||
FdoSecretsPlugin.cpp | ||
FdoSecretsPlugin.h | ||
FdoSecretsSettings.cpp | ||
FdoSecretsSettings.h | ||
GcryptMPI.cpp | ||
GcryptMPI.h | ||
README.md |
Freedesktop.org Secret Storage Spec Server Side API
This plugin implements the Secret Storage specification version 0.2. While running KeePassXC, it acts as a Secret Service server, registered on DBus, so clients like seahorse, python-secretstorage, or other implementations can connect and access the exposed database in KeePassXC.
Configurable settings
- The user can specify if a database is exposed on DBus, and which group is exposed.
- Whether to show desktop notification is shown when an entry is retrieved.
- Whether to skip confirmation for entries deleted from DBus
Implemented Attributes on Item Object
The following attributes are exposed:
Key | Value |
---|---|
Title | The entry title |
UserName | The entry user name |
URL | The entry URL |
Notes | The entry notes |
In addition, all non-protected custom attributes are also exposed.
Architecture
FdoSecrets::Service
is the top level DBus service- There is one and only one
FdoSecrets::Collection
per opened database tab - Each entry under the exposed database group has a corresponding
FdoSecrets::Item
DBus object.
Signal connections
- Collections are created when a corresponding database tab opened
- If the database is locked, a collection is created
- When the database is unlocked, collection populates its children
- If the unlocked database's exposed group is none, collection deletes itself
- If the database's exposed group changes, collection repopulates
- If the database's exposed group changes to none, collection deletes itself
- If the database's exposed group changes from none, the service recreates a collection