diff options
author | Adrian Vovk <adrianvovk@gmail.com> | 2024-01-09 00:11:43 +0100 |
---|---|---|
committer | Luca Boccassi <bluca@debian.org> | 2024-02-19 12:18:11 +0100 |
commit | 1b466c09401fe4896948b0a727ed670488a3cb07 (patch) | |
tree | 768257c65224046dfa1713b434e5c351a178376f /docs/USER_RECORD.md | |
parent | Document blob directory behavior (diff) | |
download | systemd-1b466c09401fe4896948b0a727ed670488a3cb07.tar.xz systemd-1b466c09401fe4896948b0a727ed670488a3cb07.zip |
user-record: Add blobDirectory and blobManifest
These fields are used to connect a JSON user record to its blob
directory, and to include the directory's contents in the record's
signature
Diffstat (limited to 'docs/USER_RECORD.md')
-rw-r--r-- | docs/USER_RECORD.md | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/docs/USER_RECORD.md b/docs/USER_RECORD.md index 1479e53916..f28106797e 100644 --- a/docs/USER_RECORD.md +++ b/docs/USER_RECORD.md @@ -234,6 +234,16 @@ optional, when unset the user should not be considered part of any realm. A user record with a realm set is never compatible (for the purpose of updates, see above) with a user record without one set, even if the `userName` field matches. +`blobDirectory` → The absolute path to a world-readable copy of the user's blob +directory. See [Blob Directories](USER_RECORD_BLOB_DIRS.md) for more details. + +`blobManifest` → An object, which maps valid blob directory filenames (see +[Blob Directories](USER_RECORD_BLOB_DIRS.md) for requirements) to SHA256 hashes +formatted as hex strings. This exists for the purpose of including the contents +of the blob directory in the record's signature. Managers that support blob +directories and utilize signed user records (like `systemd-homed`) should use +this field to verify the contents of the blob directory whenever appropriate. + `realName` → The real name of the user, a string. This should contain the user's real ("human") name, and corresponds loosely to the GECOS field of classic UNIX user records. When converting a `struct passwd` to a JSON user @@ -758,7 +768,7 @@ These two are the only two fields specific to this section. All other fields that may be used in this section are identical to the equally named ones in the `regular` section (i.e. at the top-level object). Specifically, these are: -`iconName`, `location`, `shell`, `umask`, `environment`, `timeZone`, +`blobDirectory`, `blobManifest`, `iconName`, `location`, `shell`, `umask`, `environment`, `timeZone`, `preferredLanguage`, `additionalLanguages`, `niceLevel`, `resourceLimits`, `locked`, `notBeforeUSec`, `notAfterUSec`, `storage`, `diskSize`, `diskSizeRelative`, `skeletonDirectory`, `accessMode`, `tasksMax`, `memoryHigh`, `memoryMax`, `cpuWeight`, `ioWeight`, @@ -810,9 +820,9 @@ The following fields are defined in the `binding` section. They all have an identical format and override their equally named counterparts in the `regular` and `perMachine` sections: -`imagePath`, `homeDirectory`, `partitionUuid`, `luksUuid`, `fileSystemUuid`, -`uid`, `gid`, `storage`, `fileSystemType`, `luksCipher`, `luksCipherMode`, -`luksVolumeKeySize`. +`blobDirectory`, `imagePath`, `homeDirectory`, `partitionUuid`, `luksUuid`, +`fileSystemUuid`, `uid`, `gid`, `storage`, `fileSystemType`, `luksCipher`, +`luksCipherMode`, `luksVolumeKeySize`. ## Fields in the `status` section @@ -1102,6 +1112,7 @@ A fully featured user record associated with a home directory managed by "fileSystemUuid" : "758e88c8-5851-4a2a-b88f-e7474279c111", "gid" : 60232, "homeDirectory" : "/home/grobie", + "blobDirectory" : "/var/cache/systemd/homed/grobie/", "imagePath" : "/home/grobie.home", "luksCipher" : "aes", "luksCipherMode" : "xts-plain64", @@ -1112,6 +1123,10 @@ A fully featured user record associated with a home directory managed by "uid" : 60232 } }, + "blobManifest" : { + "avatar" : "c0636851d25a62d817ff7da4e081d1e646e42c74d0ecb53425f75fcf1ba43b52", + "login-background" : "da7ad0222a6edbc6cd095149c72d38d92fd3114f606e4b57469857ef47fade18" + }, "disposition" : "regular", "enforcePasswordPolicy" : false, "lastChangeUSec" : 1565950024279735, |