COMPOSER_AUTH是Composer用于安全认证的环境变量,支持http-basic、github-oauth等多种私有仓库认证方式,通过JSON格式配置凭据,可设于命令行、shell或CI/CD中,避免敏感信息泄露。

在使用 Composer 时,如果需要访问私有仓库(如私有的 Packagist、GitHub、GitLab 或 Nexus 等),通常需要进行身份认证。通过设置 COMPOSER_AUTH 环境变量,可以安全地提供认证信息,而无需将凭据写入 composer.json 文件中。
COMPOSER_AUTH 是一个环境变量,Composer 启动时会自动读取它,并将其内容解析为 JSON 格式的认证配置。它可以包含 HTTP 基本身份验证、OAuth Token、Bearer Token 等信息,适用于多种类型的私有源。
COMPOSER_AUTH 支持以下几种常见的认证方式:
你可以通过命令行、shell 配置文件、CI/CD 环境等方式设置该变量。以下是具体操作方法:
在终端中执行以下命令:
export COMPOSER_AUTH='{"http-basic": {"example.com": {"username": "user", "password": "pass"}}, "github-oauth": {"github.com": "your_github_token"}}'
之后运行 composer install 或 composer update 即可自动使用认证信息。
在 CMD 中:
set COMPOSER_AUTH={"http-basic": {"example.com": {"username": "user", "password": "pass"}}, "github-oauth": {"github.com": "your_token"}}
在 PowerShell 中:
$env:COMPOSER_AUTH='{"http-basic": {"example.com": {"username": "user", "password": "pass"}}, "github-oauth": {"github.com": "your_token"}}'
编辑 ~/.bashrc、~/.zshrc 或 ~/.profile:
echo 'export COMPOSER_AUTH='\''{"github-oauth": {"github.com": "ghp_your_real_token"}}'\''' >> ~/.zshrc
source ~/.zshrc
注意:不要将敏感信息提交到版本控制系统中。
在 .github/workflows/ci.yml 中:
env:
COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.GITHUB_TOKEN }}"}}'
确保将 token 添加到项目的 Secrets 中。
仅配置 GitHub Token:
{"github-oauth": {"github.com": "ghp_abc123..."}}
配置私有仓库的用户名密码:
{
"http-basic": {
"packages.example.com": {
"username": "admin",
"password": "secret123"
}
}
}
同时配置多个源:
{
"http-basic": {
"repo.example.com": {
"username": "user",
"password": "pass"
}
},
"github-oaut h": {
"github.com": "ghp_token_here"
},
"gitlab-token": {
"gitlab.com": "glpat-xxxxx"
}
}
auth.json 文件,但不会覆盖显式配置以上就是composer的COMPOSER_AUTH环境变量怎么配置_教你设置COMPOSER_AUTH进行认证的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号