gpt4 book ai didi

php - "--no-scripts"选项是否足以解决以 root 身份运行 composer 的安全问题?

转载 作者:行者123 更新时间:2023-12-04 11:48:36 26 4
gpt4 key购买 nike

我想做 .sh用于将网页从 github 自动部署到生产的文件。我需要在其中运行 composer install 但当我运行它时,它会向我发出警告:

"Do not run composer install as root super user!"


我发现这是出于安全原因。但是我还需要运行其他需要例如的命令删除一些文件和目录。
我发现解决此问题的解决方案是:
composer install --no-scripts --no-interaction
问题是:够了吗?是 --no-script解决方案与否?以 root 身份运行 Composer 的最佳实践是什么?

最佳答案

最佳做法是不要使用 sudo完全用于 Composer 命令。如果您需要 sudo对于 Composer ,它通常表示您的项目文件权限设置不正确。
例如。您应该有一个拥有项目目录的非 root 用户,并且您应该以该用户身份运行所需的命令,而不需要 sudo .如果您需要以 root 身份运行,这可能意味着您在之前的一次运行中这样做了,并且已经弄乱了您的文件权限。
(最佳实践在任何情况下也不在生产中运行 install ,但至少是 you are not running update )
在极少数情况下,您需要运行 composer作为 super 用户,并且您不在一个非常受限的环境中(比如构建 Docker 镜像),您应该注意 official guidance并且不仅使用 --no-scripts ,还有参数 --no-plugins ,所以你只是在做文件复制而不是执行其他脚本。

关于php - "--no-scripts"选项是否足以解决以 root 身份运行 composer 的安全问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65917154/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com