Skip to content

Commit c8f1c30

Browse files
A6GibKmbilelmoussaoui
authored andcommitted
README: Describe how to store the login password
1 parent 6022a4b commit c8f1c30

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

server/README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,30 @@
44

55
The new D-Bus Secret Service provider. Replacement of the `gnome-keyring-daemon`
66

7+
## Unlocking the session keyring
8+
9+
The session keyring is generally encrypted with the user's password. In order to
10+
unlock it the daemon has to be started with the `--login` flag.
11+
12+
Alternatively, the daemon will try to load a
13+
[credential](https://systemd.io/CREDENTIALS/) named
14+
`oo7.keyring-encryption-password` and use it to unlock the session keyring.
15+
16+
At the moment, this requires systemd v258 or newer to load the credential from
17+
the user's credstore when starting the service. In such a case the credential
18+
can be stored as an encrypted blob in the user's credstore via
19+
20+
``` sh
21+
mkdir -p ${XDG_CONFIG_HOME:-~/.config}/credstore.encrypted
22+
systemd-ask-password -n | systemd-creds encrypt --user --name=oo7.keyring-encryption-password - ${XDG_CONFIG_HOME:-~/.config}/credstore.encrypted/oo7.keyring-encryption-password
23+
```
24+
25+
**WARNING**: Any user capable of reading this file and with access to the TPM
26+
(e.g the `root` user) can decrypt this blob. This can be mitigated if using an
27+
encrypted home with [systemd-homed](https://systemd.io/HOME_DIRECTORY/).
28+
29+
See the manual page `systemd.exec(5)` for more details.
30+
731
## License
832

933
The project is released under the MIT license.

0 commit comments

Comments
 (0)