Amazon Simple Storage Service
開発者ガイド (API バージョン 2006-03-01)

AWS アカウントまたは IAM ユーザーの認証情報を使用したリクエストの実行 – AWS SDK for Java

AWS アカウントまたは IAM ユーザー認証情報を使用して認証済みのリクエストを Amazon S3 に送信するには、以下を実行します。

  • AmazonS3ClientBuilder クラスを使用して AmazonS3Client インスタンスを作成します。

  • AmazonS3Client メソッドの 1 つを実行して、 Amazon S3 にリクエストを送信します。クライアントにより、指定した認証情報から必要な署名が生成されて、リクエストに追加されます。

次の例では、前のタスクを実行します。有効な例を作成してテストする方法については、「Amazon S3 Java コード例のテスト」を参照してください。

import; import java.util.List; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import; import; import; import; import; public class MakingRequests { public static void main(String[] args) throws IOException { String clientRegion = "*** Client region ***"; String bucketName = "*** Bucket name ***"; try { AmazonS3 s3Client = AmazonS3ClientBuilder.standard() .withCredentials(new ProfileCredentialsProvider()) .withRegion(clientRegion) .build(); // Get a list of objects in the bucket, two at a time, and // print the name and size of each object. ListObjectsRequest listRequest = new ListObjectsRequest().withBucketName(bucketName).withMaxKeys(2); ObjectListing objects = s3Client.listObjects(listRequest); while(true) { List<S3ObjectSummary> summaries = objects.getObjectSummaries(); for(S3ObjectSummary summary : summaries) { System.out.printf("Object \"%s\" retrieved with size %d\n", summary.getKey(), summary.getSize()); } if(objects.isTruncated()) { objects = s3Client.listNextBatchOfObjects(objects); } else { break; } } } catch(AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it, so it returned an error response. e.printStackTrace(); } catch(SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }