gpt4 book ai didi

c - 如何读取内核空间中关联的 uid 的 gids 列表?

转载 作者:太空宇宙 更新时间:2023-11-04 08:22:01 24 4
gpt4 key购买 nike

我有一个基于 gid 进行身份验证的 Linux 内核驱动程序。驱动程序将获得 uid 作为输入。现在我需要获取此用户关联的所有 gid。

例如:

$ id
uid=1313(tuser) gid=1313(tuser) groups=1313(tuser),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),124(sambashare)

如果驱动程序获得 1313 作为 uid,我需要读取所有 gid,即 1313,4,24,27,30,46,124

这可能吗?

最佳答案

I've a Linux kernel driver which do some authentication based on gid. The driver will get uid as input. Now I need to get all gid this user is associated.

这在内核中是不可能的,甚至是没有意义的。

UID 和 GID 之间的关系由用户空间管理。具有给定 UID 的进程通常具有 /etc/group 指定的 GID,但可能具有一组不同的 GID,具体取决于它的启动方式。

如果您需要根据 GID 进行身份验证(这听起来有点可疑,但我会放过它),您需要查看与您尝试进行身份验证的特定进程关联的 GID 列表。无法从 UID 返回该信息。

关于c - 如何读取内核空间中关联的 uid 的 gids 列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33037680/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com