user-session-keyring - benutzerbezogener Vorgabe-Sitzungsschlüsselbund
Der Benutzersitzungsschlüsselbund ist ein Schlüsselbund, der im
Auftrag von Benutzern zur Verankerung von Schlüsseln verwandt wird.
Jede UID, mit der der Kernel umgeht, hat ihren eigenen
Benutzersitzungsschlüsselbund, der von allen Prozessen mit dieser UID
gemeinsam verwandt wird. Der Benutzersitzungsschlüsselbund hat einen
Namen (die Beschreibung) der Form
_uid_ses.<UID>, wobei
<UID> die Benutzerkennung des entsprechenden Benutzers ist.
Der Benutzersitzungsschlüsselbund ist dem Datensatz zugeordnet, den der
Kernel für die UID verwaltet. Er beginnt mit dem ersten Zugriffsversuch
auf den Benutzersitzungsschlüsselbund, dem
user-keyring(7) oder
dem
session-keyring(7) zu existieren. Der Existenz des
Schlüsselbunds bleibt befestigt, solange wie Prozesse mit dieser realen
UID laufen oder Dateien von diesen Prozessen geöffnet sind. (Der
Schlüsselbund kann auch endlos befestigt werden, indem er mit einem
anderen Schlüsselbund verbunden wird.)
Der Benutzersitzungsschlüsselbund wird bedarfsgesteuert erstellt, wenn
ein Thread ihn anfordert oder wenn ein Thread um seinen
session-keyring(7) bittet und dieser nicht existiert. In letzterem
Falle wird ein Benutzersitzungsschlüsselbund erstellt und, falls der
Sitzungsschlüsselbund nicht erstellt wurde, wird der
Benutzersitzungsschlüsselbund als der tatsächliche
Schlüsselbund des Prozesses gesetzt.
Der Benutzersitzungsschlüsselbund wird von
request_key(2)
durchsucht, falls der tatsächliche Sitzungsschlüsselbund nicht
existiert und ansonsten ignoriert.
Ein besonderer Wert für die Seriennummer,
KEY_SPEC_USER_SESSION_KEYRING, ist definiert, die an Stelle der
tatsächlichen Seriennummer des Sitzungsschlüsselbundes des
Benutzers des aufrufenden Prozesses verwandt werden kann.
Bei dem Hilfswerkzeug
keyctl(1) kann »
@us« anstelle
der numerischen Schlüsselkennung fast genauso verwandt werden.
Benutzersitzungsschlüsselbunde sind von
clone(2),
fork(2),
vfork(2),
execve(2) und
_exit(2) unabhängig,
außer dass der Schlüsselbund zerstört wird, wenn der
UID-Datensatz zerstört wird, wenn der letzte Prozess, der ihn
befestigt, sich beendet.
Falls ein Benutzersitzungsschlüsselbund beim Zugriff nicht existiert,
wird er erstellt.
Anstatt sich auf den Benutzersitzungsschlüsselbund zu verlassen wird
nachdrücklich empfohlen, dass der
session-keyring(7)
(beispielsweise durch
pam_keyinit(8)) gesetzt wird –
insbesondere, wenn der Prozess als »root« läuft.
Der Benutzersitzungsschlüsselbund wurde hinzugefügt, um
Situationen zu unterstützen, bei denen ein Prozess nicht über
einen Sitzungsschlüsselbund verfügt, vielleicht weil er
über einen Ausführungspfad erstellt wurde, der PAM nicht
beteiligte (z.B. vielleicht war er ein von
inetd(8) gestarteter
Daemon). In einem solchen Szenario agiert der
Benutzersitzungsschlüsselbund als Ersatz für den
session-keyring(7).
keyctl(1),
keyctl(3),
keyrings(7),
persistent-keyring(7),
process-keyring(7),
session-keyring(7),
thread-keyring(7),
user-keyring(7)
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann
<
[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU
General Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
Sie bitte eine E-Mail an die
Mailingliste
der Übersetzer