開発用の AWS 認証情報とリージョンのセットアップ - AWS SDK for Java

Amazon Web Services(AWS)では、製品を改善し、より良いカスタマーエクスペリエンスを提供する方法を見つけることに重点を置いています。そのためには、お客様のフィードバックが必要です。Java Spring での経験と AWS との統合の必要性に関する洞察を 5 分ほどお待ちください。

クイック調査を行うにはここをクリック

このアンケートは外部企業(Qualtrics)が主催しているため、上記のリンクは当社のウェブサイトにつながっていません。AWS は、このアンケートで収集したデータを所有しており、収集した情報や結果をアンケート回答者と共有することはありません。AWS はお客様の情報を処理します。詳細については、」AWS プライバシーに関する通知

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

開発用の AWS 認証情報とリージョンのセットアップ

AWS SDK for Java でサポートされている任意のサービスに接続するには、AWS 認証情報を指定する必要があります。AWS SDK と CLI では、プロバイダーチェーンを使用して、システムまたはユーザーの環境変数やローカルの AWS 設定ファイルなど、いくつかの場所にある AWS 認証情報が検索されます。

このトピックでは、AWS SDK for Java を使用して、ローカルアプリケーション開発用に AWS 認証情報をセットアップするための基本情報について説明します。EC2 インスタンス内で使用するための認証情報をセットアップする必要がある場合、または開発に Eclipse IDE を使用している場合は、代わりに以下のトピックを参照してください。

AWS 認証情報の設定

AWS SDK for Java で使用する認証情報の設定はさまざまな方法で行うことができますが、推奨される手法を次に示します。

  • 次の場所にあるローカルシステム上の AWS 認証プロファイルファイルで認証情報を設定する

    • ~/.aws/credentials での Linux, macOS, or Unix

    • Windows の場合は C:\Users\USERNAME\.aws\credentials

    このファイルには次の形式の行が含まれています。

    [default] aws_access_key_id = your_access_key_id aws_secret_access_key = your_secret_access_key

    your_access_key_id および your_secret_access_key の値は、独自の AWS 認証情報の値に置き換えてください。

  • AWS_ACCESS_KEY_ID および AWS_SECRET_ACCESS_KEY 環境変数を設定する

    Linux, macOS, or Unix でこれらの変数を設定するには、export を使用します。

    export AWS_ACCESS_KEY_ID=your_access_key_id export AWS_SECRET_ACCESS_KEY=your_secret_access_key

    Windows でこれらの変数を設定するには、set を使用します。

    set AWS_ACCESS_KEY_ID=your_access_key_id set AWS_SECRET_ACCESS_KEY=your_secret_access_key
  • EC2 インスタンスの場合、IAM ロールを指定し、そのロールへのアクセスを EC2 インスタンスに提供します。このしくみの詳細については、 の「Amazon EC2 の IAM ロールAmazon EC2 User Guide for Linux Instances」を参照してください。

これらの方法のいずれかを使用して AWS 認証情報を設定すると、デフォルトの認証情報プロバイダチェーンを使用して AWS SDK for Java によって自動的にロードされます。Java アプリケーションでの AWS 認証情報の使用の詳細については、「AWS 認証情報の使用」を参照してください。

IMDS 認証情報の更新

AWS SDK for Java は、認証情報の有効期限に関係なく、バックグラウンドで 1 分ごとに IMDS 認証情報を更新するオプトインをサポートしています。これにより、認証情報をより頻繁に更新できるようになり、IMDS に到達できないことで認識される AWS の可用性に影響が出る可能性が低くなります。

1. // Refresh credentials using a background thread, automatically every minute. This will log an error if IMDS is down during 2. // a refresh, but your service calls will continue using the cached credentials until the credentials are refreshed 3. // again one minute later. 4. 5. InstanceProfileCredentialsProvider credentials = 6. InstanceProfileCredentialsProvider.createAsyncRefreshingProvider(true); 7. 8. AmazonS3Client.builder() 9. .withCredentials(credentials) 10. .build(); 11. 12. // This is new: When you are done with the credentials provider, you must close it to release the background thread. 13. credentials.close();

AWS リージョンの設定

AWS SDK for Java で AWS のサービスにアクセスするために使用するデフォルトの AWS リージョンを設定する必要があります。最適なパフォーマンスを得るために、地理的に近いリージョンを選択します。各サービスのリージョンのリストを表示するには、の「リージョンとエンドポイントAmazon Web Services General Reference」を参照してください。

注記

リージョンの選択をしないと、デフォルトで us-east-1 が使用されます。

認証情報の設定と同様の方法でデフォルトの AWS リージョンを設定できます。

  • ローカルシステムの次の場所にある AWS Config ファイルで AWS リージョンを設定します。

    • ~/.aws/config での Linux, macOS, or Unix

    • Windows の場合は C:\Users\USERNAME\.aws\config

    このファイルには次の形式の行が含まれています。

    [default] region = your_aws_region

    your_aws_region を目的の AWS リージョン (「us-west-2」など) に置き換えます。

  • AWS_REGION 環境変数を設定します。

    On Linux, macOS, or Unix, use export :

    export AWS_REGION=your_aws_region

    Windows では、set を使用します。

    set AWS_REGION=your_aws_region

    your_aws_region は目的の AWS リージョン名です。

トピック