首页 文章

切换用户时告诉盐要求输入密码

提问于
浏览
2

我在没有特权的用户下运行盐 . 我们的想法是创建一些可以在不同的unix用户下执行的状态,但不向任何执行该状态的人授予root权限 . 所以问题是,当通过runas或在cmd.run中指定用户时切换用户时,是否有可能以某种方式告诉salt要求输入密码 . 实际上,我希望实现以下目标:

salt '*' cmd.run runas=myuser ask_for_pass=true 'whoami'

test1:
    > enter pass for myuser:
    'myuser'

or in the same in a form of state:
whoami:
    cmd.run:
       - user = myuser
       - ask_for_pass = true

或者更接近我实际想要实现的另一个例子 - 为不同的用户安装jboss(salt-minions和master以用户“salt”运行):

$ salt 'host1' state.jboss runas=jboss_user ask_for_pass=true

1 回答

  • -1

    Salt并不完全符合你想要做的事情 .

    您最好的选择可能是使用 client_aclexternal_auth 主配置选项 .

    这两者都允许您为系统用户或ldap用户提供运行特定命令的权限 .

    client_acl docs用于授权系统用户:https://docs.saltstack.com/en/latest/ref/clientacl.html

    external_auth docs用于从PAM或LDAP验证外部用户:https://docs.saltstack.com/en/latest/topics/eauth/index.html

    例如,如果您设置了LDAP external_auth,则可能要求您的用户在命令行上执行以下操作:

    salt -a ldap '*' state.jboss
    

    然后Salt会提示输入用户和密码 .

相关问题