The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
まだ誰も着手していません。
評価
調査の方向性
Issue に示されている GeneratePreSignedUrl サンプルから始め、報告された S3 バケットに対して生成された URL を再現します。presigned request と認可に関する AWS SDK for Java の動作を調査し、その後、サンプルが必要な認可メカニズムを使用して S3 に受け入れられる URL を生成することを確認します。報告されたエラーが発生しなくなるか、サンプルがサポートされている構成を明確に文書化すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Below Sample returns subjected error, using latest version of java sdk
package com.amazonaws.samples;
import java.io.IOException;
import java.net.URL;
import com.amazonaws.AmazonClientException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.HttpMethod;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.GeneratePresignedUrlRequest;
public class GeneratePreSignedUrl {
private static String bucketName = "bucketforwso2";
private static String objectKey = "/HTML-CHEAT-SHEET-768x8555.pdf";
public static void main(String[] args) throws IOException {
@SuppressWarnings("deprecation")
AmazonS3 s3client = new AmazonS3Client(new ProfileCredentialsProvider());
try {
System.out.println("Generating pre-signed URL.");
java.util.Date expiration = new java.util.Date();
long milliSeconds = expiration.getTime();
milliSeconds += 1000 * 60 * 60; // Add 1 hour.
expiration.setTime(milliSeconds);
GeneratePresignedUrlRequest generatePresignedUrlRequest =
new GeneratePresignedUrlRequest(bucketName, objectKey);
generatePresignedUrlRequest.setMethod(HttpMethod.GET);
generatePresignedUrlRequest.setExpiration(expiration);
URL url = s3client.generatePresignedUrl(generatePresignedUrlRequest);
System.out.println("Pre-Signed URL = " + url.toString());
} catch (AmazonServiceException exception) {
System.out.println("Caught an AmazonServiceException, " +
"which means your request made it " +
"to Amazon S3, but was rejected with an error response " +
"for some reason.");
System.out.println("Error Message: " + exception.getMessage());
System.out.println("HTTP Code: " + exception.getStatusCode());
System.out.println("AWS Error Code:" + exception.getErrorCode());
System.out.println("Error Type: " + exception.getErrorType());
System.out.println("Request ID: " + exception.getRequestId());
} catch (AmazonClientException ace) {
System.out.println("Caught an AmazonClientException, " +
"which means the client encountered " +
"an internal error while trying to communicate" +
" with S3, " +
"such as not being able to access the network.");
System.out.println("Error Message: " + ace.getMessage());
}
}
}
Generating pre-signed URL.
Pre-Signed URL = https://bucketforwso2.s3.amazonaws.com/%2FHTML-CHEAT-SHEET-768x8555.pdf?AWSAccessKeyId=AKIAJH5K4ZJ6ZQB2F4XB&Expires=1514962084&Signature=rY7RjDwJkck8ZCEGWUr4lSm%2Bkuw%3D
InvalidRequest
The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
2947D4830B323D3A
4JK5mlUk/a7oOd6WJT5ol5X0prJY+0buLKr9zhnOcoz0mxAk/oc9A/nWHgIC8lggT11xneCtRLU=
- 主要言語
- Java
- スター
- 241
- フォーク
- 345
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
aws-samples/aws-java-sample のほかの issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 75/100
-
Build Error オープン
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
-
Build Failure オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 35/100
aws-samples/aws-java-sample#25 · コメント 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
aws-samples/aws-java-sample#24 · コメント 1 件 · リアクション 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
aws-samples/aws-java-sample の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
infinispan/infinispan#18150 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
-
untriaged
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
opensearch-project/k-NN#3597 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100