最近aws-sdk (バージョン 2)にアップグレードする必要が生じるまで、私はmarcel/s3を使用してきました。
私たちが気付いた変更の 1 つは、例外が発生したため、有効期限が 1 週間を超える URL に署名できないようになったことです: ArgumentError: expires_in value of #{X} exceeds one-week maximum
.
署名付き URL を作成できるONE_WEEK 定数をオーバーライドしてみました。問題は、取得した URL を curl すること400
ですX-Amz-Expires must be less than a week (in seconds); that is, the given X-Amz-Expires must be less than 604800 seconds
。
aws-sdk v2
を使用して 1 週間以上 URL に署名するにはどうすればよいmarcel/s3
ですか? aws-sdk v1
これを達成するために代替手段に切り替えていますか?
各ライブラリによって生成される URL の違いは次のとおりです。
marcel-s3
:およびをクエリ パラメータとして使用しますAWSAccessKeyId
。Expires
Signature
aws-sdk v2
: 、、、、およびをクエリパラメータとして使用しますX-Amz-Algorithm
。X-Amz-Credential
X-Amz-Date
X-Amz-Expires
X-Amz-SignedHeaders
X-Amz-Signature