簡體   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