繁体   English   中英

无法访问gem-fury中的私有存储库

[英]Cannot access a private repository in gem-fury

我已经通过gem-fury建立了一个私有的composer存储库,但是当我尝试下载其中一个软件包(使用composer-require)时,出现以下错误:

  [Composer\Downloader\TransportException]
  The 'https://s3.amazonaws.com:443/gemfury/gems/[SOME_STRING]/[VENDOR][PACKAGE]_[VERSION]_zip?Signature=SIGNATURE&Expires=1481739039&AWSAccessKeyId=[AWS_ACCESS_KEY]' URL could not be accessed: HTTP/1.1 400 Bad Request

PS我知道身份验证有效,因为作曲家确实收到package.json文件(可以识别最新版本)

任何帮助将不胜感激

简短答案 :如果您使用auth.json存储Gemfury令牌,则可能会看到此问题。 目前,解决此问题的唯一方法是将令牌直接嵌入composer.json的存储库URL中。

长答案 :不起作用的原因是由于Composer CLI中的错误。 在该特定用例中,当Composer执行Gemfury从您的私人php.fury.io库到安全S3下载的重定向时,它将包括带有您的Gemfury令牌的Authorization标头。 此标头与S3的身份验证模型冲突,并导致400 Bad Request响应。

在从一台主机到另一台主机的重定向上重新发送Authorization标头是一个相当重要的安全问题,我建议您重置Gemfury令牌并停止使用auth.json身份验证方法,直到解决此问题为止。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM