在 RHEL8 上从 /etc/gdm/PreSession/Default 访问 KRB5CCNAME

在 RHEL8 上从 /etc/gdm/PreSession/Default 访问 KRB5CCNAME

我想在用户登录后运行一个脚本。该脚本将使用其 Kerberos 票证挂载 SMB 共享。

在 RedHat 7 下,我只需从 调用该脚本,/etc/gdm/PreSession/Default它就会运行良好。它甚至会在提升权限的情况下运行脚本时保留(此变量通过下的$KRB5CCNAME保留。Defaults env_keep += "KRB5CCNAME"sudoers.d

在 Ubuntu 18.04 下,我们使用 下的一项服务/etc/systemd/user,只要有票,该服务就会使用该票。

换句话说,在 RHEL7 和 Ubuntu 下,即使通过 sudo 提升权限,我们也可以使用票证,无论是通过运行用户服务还是通过从 调用脚本/etc/gdm/PreSession/Default

在 RHEL8 下,我们看不到该变量,无论是在运行用户服务时,还是在从 调用它时运行它/etc/gdm/PreSession/Default。当我以用户身份登录时,即使在使用 时sudo,我也可以看到该变量,因此环境变量被保留,但不知何故它不适用于该服务和该脚本。

有人能帮我解决这个问题吗?我想我在某处读到过,这可能与 rhel8 下的启动方式有关gdm,但我不确定这是否是问题所在。

/etc/gdm/PreSession/Default更新:我现在看到在 下执行的脚本root。我的印象是它们是以用户身份执行的。

更新 2:看来我无论如何都可以使用票证。我以为它们不在那里,只是因为未设置$KRB5CCNAME。但无论如何,运行需要票证的命令都可以。

相关内容