具有限制权限的Ansudo

问题描述 投票:0回答:1

我们有一个用例,其中ssh用户test2被授予运行另一个用户test3拥有的特定脚本的权限。以下是/ etc / sudoer文件中提供的权限。

test2 ALL =(test3)NOPASSWD:/home/test3/start.sh

[这在我们运行ssh test2 @ target_host sudo -u test3 /home/test3/start.sh时很好用

我们想通过ansible的成为方法执行ssh任务:sudo和begin_user,但是这永远行不通。我们发现,在实际执行过程中,ansible会按以下方式修改指令,并且与sudoer文件上的权限永远不匹配。

sudo -H -S -n -u test3 / bin / sh -c'“'”'“'”'“'”'“'”'echo BECOME-SUCCESS-knavgwllrftljavwujkveyjcctlgkbda; / usr / bin / python /var/tmp/ansible-tmp-1582478029.04-74694013835195/AnsiballZ_command.py'“”“”“”“”“'”'“'&& sleep 0'”'“”“]

似乎我们唯一的选择是如下更新权限,但是这种方式对test3用户提供了完全的shell权限,这将永远无法满足我们的安全要求]]

test2 ALL =(test3)NOPASSWD:/ bin / sh

以前有人遇到过类似情况吗?控制执行。请注意,test2和test3不是sudo用户。

我们有一个用例,其中ssh用户test2被授予运行另一个用户test3拥有的特定脚本的权限。以下是/ etc / sudoer文件中提供的权限。 test2 ALL = ...

ansible sudo
1个回答
0
投票

由于您只需要test2用户来执行test3拥有的一个文件,如何只授予test2读取和执行该文件(及其所在目录)的权限:

© www.soinside.com 2019 - 2024. All rights reserved.