如何在sudoers中将命令参数与Cmnd_Alias一起使用?
如何在sudoers中指定命令参数?作为背景,aws命令实际上是通向大量子系统的网关,我想限制用户只能运行aws s3 cp ...any other args... 当我尝试以下内容时 /etc/sudoers Cmnd_Alias AWSS3_CMD = /usr/local/bin/aws s3 cp, /usr/local/aws/bin/aws s3 cp gbt1 ALL=(gbt-ops) NOPASSWD: AWSS3_CMD 不幸的是,shell提示输入密码 $ sudo -u gbt-ops aws s3 cp helloworld s3://my-bucket/hw.1 gbt-ops's password: 如果我在Cmnd_Alias中删除了命令args,那么它会按需要流动(没有密码提示),但是授权范围太广。因此,仅将某些类型的命令调用限制为正确的方法是什么。 Cmnd_Alias AWSS3_CMD = /usr/local/bin/aws, /usr/local/aws/bin/aws 然后 $ sudo -u gbt-ops aws s3 cp helloworld s3://my-bucket/hw.1 ...happy …