我希望能够设置"部署"用户在CodeDeploy而不是以root身份执行所有操作。可能吗?
答案 0 :(得分:2)
没有选项可以像CodeDeploy服务或代理中的任何其他用户一样运行。安装软件通常需要root权限,并且至少需要其他用户通常运行的进程。
如果您想限制代理的有效权限,您可能需要查看SElinux。您可以使用SElinux来限制主机代理的可执行文件的访问权限。如果您选择一般使用SElinux,则Host Agent能够设置文件的上下文。
毕竟,如果您真的想以另一个用户身份运行CodeDeploy代理,请尝试以下操作:
/opt/codedeploy-agent/
中所有内容的所有权更改为您要运行的用户。/opt/codedeploy-agent/bin/codedeploy-agent start
。您还需要确保不要尝试在appspec中指定作为用户或文件权限运行,因为代理可能无法执行这些操作,但无论如何都会尝试。