{
    "content": [
        {
            "type": "text",
            "text": "# USER-KEYRING(7) (man)\n\n**Summary:** user-keyring - per-user keyring\n\n## See Also\n\n- keyctl(1)\n- keyctl(3)\n- keyrings(7)\n- persistent-keyring(7)\n- process-keyring(7)\n- session-keyring(7)\n- thread-keyring(7)\n- user-session-keyring(7)\n- pamkeyinit(8)\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **DESCRIPTION** (33 lines)\n- **SEE ALSO** (3 lines)\n- **COLOPHON** (7 lines)\n\n## Full Content\n\n### NAME\n\nuser-keyring - per-user keyring\n\n### DESCRIPTION\n\nThe  user  keyring is a keyring used to anchor keys on behalf of a user.  Each UID the kernel\ndeals with has its own user keyring that is shared by all processes with that UID.  The  user\nkeyring  has  a  name  (description) of the form uid.<UID> where <UID> is the user ID of the\ncorresponding user.\n\nThe user keyring is associated with the record that the kernel maintains  for  the  UID.   It\ncomes  into existence upon the first attempt to access either the user keyring, the user-ses‐‐\nsion-keyring(7), or the session-keyring(7).  The keyring remains pinned in existence so  long\nas  there  are processes running with that real UID or files opened by those processes remain\nopen.  (The keyring can also be pinned indefinitely by linking it into another keyring.)\n\nTypically, the user keyring is created by pamkeyinit(8) when a user logs in.\n\nThe user keyring is not searched by default by requestkey(2).  When pamkeyinit(8) creates a\nsession  keyring,  it  adds to it a link to the user keyring so that the user keyring will be\nsearched when the session keyring is.\n\nA special serial number value, KEYSPECUSERKEYRING, is defined that can be used in lieu  of\nthe actual serial number of the calling process's user keyring.\n\nFrom  the  keyctl(1)  utility,  '@u' can be used instead of a numeric key ID in much the same\nway.\n\nUser keyrings are independent of clone(2), fork(2), vfork(2), execve(2), and exit(2) except‐\ning that the keyring is destroyed when the UID record is destroyed when the last process pin‐\nning it exits.\n\nIf it is necessary for a key associated with a user to exist  beyond  the  UID  record  being\ngarbage  collected—for  example,  for  use by a cron(8) script—then the persistent-keyring(7)\nshould be used instead.\n\nIf a user keyring does not exist when it is accessed, it will be created.\n\n### SEE ALSO\n\nkeyctl(1), keyctl(3), keyrings(7), persistent-keyring(7), process-keyring(7),\nsession-keyring(7), thread-keyring(7), user-session-keyring(7), pamkeyinit(8)\n\n### COLOPHON\n\nThis page is part of release 5.10 of the Linux man-pages project.  A description of the\nproject, information about reporting bugs, and the latest version of this page, can be found\nat https://www.kernel.org/doc/man-pages/.\n\n\n\nLinux                                        2020-08-13                              USER-KEYRING(7)\n\n"
        }
    ],
    "structuredContent": {
        "command": "USER-KEYRING",
        "section": "7",
        "mode": "man",
        "summary": "user-keyring - per-user keyring",
        "synopsis": null,
        "flags": [],
        "examples": [],
        "see_also": [
            {
                "name": "keyctl",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/keyctl/1/json"
            },
            {
                "name": "keyctl",
                "section": "3",
                "url": "https://www.chedong.com/phpMan.php/man/keyctl/3/json"
            },
            {
                "name": "keyrings",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/keyrings/7/json"
            },
            {
                "name": "persistent-keyring",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/persistent-keyring/7/json"
            },
            {
                "name": "process-keyring",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/process-keyring/7/json"
            },
            {
                "name": "session-keyring",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/session-keyring/7/json"
            },
            {
                "name": "thread-keyring",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/thread-keyring/7/json"
            },
            {
                "name": "user-session-keyring",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/user-session-keyring/7/json"
            },
            {
                "name": "pamkeyinit",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/pamkeyinit/8/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 33,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "COLOPHON",
                "lines": 7,
                "subsections": []
            }
        ]
    }
}