在 sudoers 中使用占位符或环境变量

在 sudoers 中使用占位符或环境变量

是否可以在sudoers规则中使用任何类型的占位符(不仅仅是通配符)或环境变量?

我想要验证用户(sudo执行命令的人)是否将自己的用户名作为参数传递给命令。更准确地说,我想编写一些sudoers规则,crontab强制要求crontab提供-u参数和用户名。

我的意思类似这样的:

Cmnd_Alias CRONTAB_LIST = /usr/bin/crontab -u $USER -l

从我的实验来看,这似乎$USER不起作用。它被明确处理,并且为了匹配,用户必须输入

sudo crontab -u \$USER -l

sudoers男人我注意到了像 这样的占位符。但它们似乎仅与for 参数%{user}一起使用。Defaultiolog_dir

那么有没有什么办法可以解决这个问题(不涉及“硬编码”用户名)?


我注意到了类似的问题:是否可以在 sudoers 规则中使用环境变量?。但在我看来,它专注于环境变量,而我实际上并不需要它们。我只想匹配用户名。(这可以用不同的方式来完成。

相关内容