persistent-keyring(7) Miscellaneous Information Manual persistent-keyring(7) BEZEICHNUNG persistent-keyring - benutzerbezogener dauerhafter Schlusselbund BESCHREIBUNG Der dauerhafte Schlusselbund ist ein Schlusselbund, der im Auftrag von Benutzern zur Verankerung von Schlusseln verwandt wird. Jede UID, mit der der Kernel umgeht, hat ihren eigenen dauerhaften Schlusselbund, der von allen Threads, die der UID gehoren, gemeinsam verwandt wird. Der dauerhafte Schlusselbund hat einen Namen (die Beschreibung) der Form _persistent., wobei die Benutzerkennung des entsprechenden Benutzers ist. Auf den dauerhaften Schlusselbund kann nicht direkt zugegriffen werden, auch nicht von Prozessen mit der geeigneten UID. Stattdessen muss er erst mit einem der Schlusselbunde des Prozesses verbunden werden, bevor dieser Schlusselbund auf den dauerhaften Schlusselbund gemass den Berechtigungen des Eigentumers zugreifen kann. Diese Verbindung erfolgt mit der Funktion keyctl_get_persistent(3). Falls ein dauerhafter Schlusselbund beim Zugriff mit der Aktion keyctl_get_persistent(3) nicht existiert, wird er automatisch erstellt. Jedes mal, wenn die Aktion keyctl_get_persistent(3) durchgefuhrt wird, wird der Ablaufzeitmesser des dauerhaften Schlusselbundes zuruckgesetzt auf den Wert in: /proc/sys/kernel/keys/persistent_keyring_expiry Sollte die Zeituberschreitung erreicht werden, wird der dauerhafte Schlusselbund entfernt und alles, was er befestigt, kann entsorgt werden. Der Schlusselbund wird dann bei nachfolgenden Aufrufen von keyctl_get_persistent(3) wieder erstellt. Der dauerhafte Schlusselbund wird durch request_key(2) nicht direkt durchsucht; er wird nur durchsucht, falls er mit einem der Schlusselbunde verbunden ist, die von request_key(2) durchsucht werden. Der dauerhafte Schlusselbund ist unabhangig von clone(2), fork(2), vfork(2), execve(2) und _exit(2). Er verbleibt, bis seine Ablaufzeituberschreitung ausgelost wird, dann wird er entfernt. Dies ermoglicht es dauerhaften Schlusselbunden, Schlussel uber das Ende der Lebensdauer des Kernel-Datensatzes der entsprechenden UID zu transportieren (bei dessen Zerstorung auch der user-keyring(7) und der user-session-keyring(7) zerstort wird). Der dauerhafte Schlusselbund kann daher dazu verwandt werden, Authentifizierungsmerkmale fur Prozesse zu halten, die ohne Benutzerinteraktion laufen, wie durch cron(8) gestartete Programme. Der dauerhafte Schlusselbund wird zum Speichern UID-spezifischer Objekte verwandt, die selbst nur begrenzte Lebensdauern haben (z.B. Kerberos-Token). Falls diese Token nicht mehr verwandt werden (z.B. auf den dauerhaften Schlusselbund nicht mehr zugegriffen wird), dann stellt die Zeituberschreitung des dauerhaften Schlusselbundes sicher, dass die entsprechenden Objekte automatisch verworfen werden. Besondere Aktionen Die Bibliothek keyutils stellt die Funktion keyctl_get_persistent(3) zur Bearbeitung dauerhafter Schlusselbunde bereit. (Diese Funktion ist eine Schnittstelle zu der Aktion keyctl(2) KEYCTL_GET_PERSISTENT). Diese Aktion ermoglicht es dem aufrufenden Thread, einen dauerhaften Schlusselbund entsprechend seiner eigenen UID oder, falls der Thread uber die Capability CAP_SETUID verfugt, den dauerhaften Schlusselbund entsprechend einer anderen UID in dem gleichen Benutzernamensraum zu erlangen. ANMERKUNGEN Jeder Benutzernamensraum besitzt einen Schlusselbund namens .persistent_register, der Verweise auf alle dauerhaften Schlussel in diesem Namensraum enthalt. (Der Schlusselbund .persistent_register kann durch Lesen der Inhalte der Datei /proc/keys fur die UID 0 in diesem Namensraum gesehen werden.) Die Aktion keyctl_get_persistent(3) sucht nach einem Schlussel mit einem Namen der Form _persistent.UID in diesem Schlusselbund, erstellt diesen Schlussel, falls er nicht existiert, und verbindet ihn mit dem Schlusselbund. SIEHE AUCH keyctl(1), keyctl(3), keyctl_get_persistent(3), keyrings(7), process-keyring(7), session-keyring(7), thread-keyring(7), user-keyring(7), user-session-keyring(7) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 31. Oktober 2023 persistent-keyring(7)