带有通配符参数的 Sudoers 命令与长度为 0 的参数不匹配

Sudoers command with wildcard arguments doesn't match 0-length arguments

我需要允许一组用户 运行 作为不同的用户使用具有以下结构的命令:

command [args] subcommand [subargs]

args 和 subargs 都应该是可选的。 我尝试在 sudoers 中将以下内容列入白名单:

/path/to/command * subcommand *

但是,这仅在指定了 args 和 subargs 时才有效。

documentation 说:

" * " Matches any set of zero or more characters (including white space).

我希望这是清楚的。非常感谢任何帮助。

(P.S。我知道存在安全风险,即用户可以 运行 不同的子命令,如果他们在参数的其他地方有子命令的名称。这是一个可接受的风险,但仍然欢迎缓解。)

实现的方法是消除通配符和子命令之间的空格:

/path/to/command *subcommand*