

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

# 基本的なセットアップ
<a name="setup-basic-onetime-setup"></a>

## 概要:
<a name="setup-overview"></a>

 AWS のサービス を使用して にアクセスするアプリケーションを正常に開発するには AWS SDK for Kotlin、次の要件を満たす必要があります。
+  AWS IAM アイデンティティセンターにある [AWS アクセスポータルにサインイン](#setup-awsaccount)できる必要があります。
+ SDK 用に設定された [IAM ロールのアクセス許可](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)は、アプリケーション AWS のサービス に必要な へのアクセスを許可する必要があります。**PowerUserAccess** AWS 管理ポリシーに関連するアクセス許可は、ほとんどの開発ニーズに十分対応できます。
+ 以下の要素を備えた開発環境:
  + [共有設定ファイル](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html)は、次のいずれかの方法で設定できます。
    + `config` ファイルには、SDK が AWS 認証情報を取得できるようにするための [IAM Identity Center シングルサインオン設定](#setup-sso-access)が含まれています。
    + `credentials` ファイルには一時的な認証情報が含まれています。
  + [Java 8 以降のインストール](#setup-envtools)。
  + [Maven](https://maven.apache.org/download.cgi) や [Gradle](https://gradle.org/install/) などの[構築オートメーションツール](#setup-envtools)。
  + コードを使用するテキストエディター。
  + (オプション、ただし推奨) [IntelliJ IDEA](https://www.jetbrains.com/idea/download/#section=windows) や [Eclipse](https://www.eclipse.org/ide/) などの IDE (統合開発環境）。

    IDE を使用すると、 AWS Toolkitを統合してより簡単に操作することもできます AWS のサービス。[AWS Toolkit for IntelliJ](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html) と [AWS Toolkit for Eclipse](https://docs.aws.amazon.com/toolkit-for-eclipse/v1/user-guide/welcome.html)は、使用できる 2 つのツールキットです。
+ アプリケーションを実行する準備ができたら、アクティブな AWS アクセスポータルセッション。を使用して AWS Command Line Interface 、IAM Identity Center の AWS アクセスポータルへの[サインインプロセスを開始します](#setup-login-sso)。

**重要**  
このセットアップセクションの手順は、ユーザーまたは組織が IAM アイデンティティセンターを使用していることを前提としています。組織が IAM Identity Center とは独立して動作する外部 ID プロバイダーを使用している場合は、 SDK for Kotlin が使用する一時的な認証情報を取得する方法を確認してください。以下の手順に従って、一時的な認証情報を `~/.aws/credentials` ファイルに追加します。  
ID プロバイダーが一時的な認証情報を `~/.aws/credentials` ファイルに自動的に追加する場合は、SDK または AWS CLIにプロファイル名を指定する必要がないように、プロファイル名が `[default]` であることを確認してください。

## AWS アクセスポータルへのサインイン機能
<a name="setup-awsaccount"></a>

 AWS アクセスポータルは、IAM アイデンティティセンターに手動でサインインするウェブの場所です。URL の形式は `d-xxxxxxxxxx.awsapps.com/start`または です`your_subdomain.awsapps.com/start`。

 AWS アクセスポータルに慣れていない場合は、「SDK およびツールリファレンスガイド」の[「IAM Identity Center 認証](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html)」トピックのアカウントアクセスに関するガイダンスに従ってください。 AWS SDKs 

## SDK のシングルサインオンアクセスを設定する
<a name="setup-sso-access"></a>

SDK が IAM Identity Center 認証を使用するように[プログラムによるアクセスセクション](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html#idcGettingStarted)のステップ 2 を完了したら、システムに次の要素が含まれているはずです。
+ アプリケーションを実行する前に [AWS アクセスポータルセッション](#setup-login-sso)を開始 AWS CLIするために使用する 。
+ [デフォルトプロファイル](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html#file-format-profile)を含む `~/.aws/config` ファイル。SDK for Kotlin は、プロファイルの SSO トークンプロバイダー設定を使用して、 にリクエストを送信する前に認証情報を取得します AWS。IAM Identity Center 許可セットに接続された IAM ロールである `sso_role_name` 値により、アプリケーションで使用されている AWS のサービス にアクセスできます。

  次のサンプル `config` ファイルは、SSO トークンプロバイダー設定で設定されたデフォルトプロファイルを示しています。プロファイルの `sso_session` 設定は、指定された `sso-session` セクションを参照します。`sso-session` セクションには、 AWS アクセスポータルセッションを開始するための設定が含まれています。

  ```
  [default]
  sso_session = my-sso
  sso_account_id = 111122223333
  sso_role_name = SampleRole
  region = us-east-1
  output = json
  
  [sso-session my-sso]
  sso_region = us-east-1
  sso_start_url = https://provided-domain.awsapps.com/start
  sso_registration_scopes = sso:account:access
  ```

SSO トークンプロバイダー設定で使用される設定の詳細については、「 AWS SDKs and Tools リファレンスガイド」の「[SSO token provider configuration](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html#sso-token-config)」を参照してください。

開発環境が前述のようにプログラムによるアクセス用に設定されていない場合は、[SDK リファレンスガイドのステップ 2](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html#idcGettingStarted) に従ってください。

## を使用してサインインする AWS CLI
<a name="setup-login-sso"></a>

にアクセスするアプリケーションを実行する前に AWS のサービス、SDK が IAM Identity Center 認証を使用して認証情報を解決するには、アクティブな AWS アクセスポータルセッションが必要です。で次のコマンドを実行して AWS CLI 、 AWS アクセスポータルにサインインします。

```
aws sso login
```

デフォルトのプロファイル設定があるため、 `--profile`オプションを指定して コマンドを呼び出す必要はありません。SSO トークンプロバイダー設定で名前付きプロファイルが使用されている場合、コマンドは です`aws sso login --profile named-profile`。

既にアクティブなセッションがあるかどうかをテストするには、次の AWS CLI コマンドを実行します。

```
aws sts get-caller-identity
```

このコマンドへの応答により、共有 `config` ファイルに設定されている IAM Identity Center アカウントとアクセス許可のセットが報告されます。

**注記**  
既にアクティブな AWS アクセスポータルセッションがあって `aws sso login` を実行している場合は、認証情報を入力するように要求されません。  
ただし、`botocore` に情報へのアクセス許可を求めるダイアログが表示されます。`botocore` は AWS CLI の基盤です。  
**と** AWS CLI SDK for Kotlin の情報へのアクセスを許可する を選択します。

## Java と構築ツールをインストールする
<a name="setup-envtools"></a>

使用する開発環境には次が必要です。
+ JDK 8 以降。は、[Oracle Java SE Development Kit ](https://www.oracle.com/java/technologies/javase-downloads.html)と、、Red Hat OpenJDK[Amazon Corretto](https://aws.amazon.com/corretto/)、[AdoptOpenJDK](https://adoptopenjdk.net/) などの Open Java Development Kit (OpenJDK) のディストリビューションで AWS SDK for Kotlin 動作します。 [ OpenJDK](https://developers.redhat.com/products/openjdk)
+ Apache Maven、Gradle、IntelliJ などの Maven Central をサポートする構築ツールまたは IDE。
  + Maven をインストールして使用する方法については、[http://maven.apache.org/](http://maven.apache.org/) を参照してください。
  + Gradle をインストールして使用する方法については、[https://gradle.org/](https://gradle.org/) を参照してください。
  + IntelliJ IDEA をインストールして使用する方法については、[https://www.jetbrains.com/idea/](https://www.jetbrains.com/idea/) を参照してください。

## 一時認証情報の使用
<a name="setup-use-temporary-creds"></a>

SDK の [IAM Identity Center シングルサインオンアクセスを設定する](#setup-sso-access)代わりに、一時的な認証情報を使用して開発環境を設定できます。

**一時的な認証情報用のローカルの認証情報ファイルを設定する**

1. [認証情報の共有ファイルを作成する](https://docs.aws.amazon.com/sdkref/latest/guide/file-location.html)

1. 認証情報ファイルに、作業中の一時的な認証情報を貼り付けるまで、次のプレースホルダーテキストを貼り付けます。

   ```
   [default]
   aws_access_key_id=<value from AWS access portal>
   aws_secret_access_key=<value from AWS access portal>
   aws_session_token=<value from AWS access portal>
   ```

1. ファイルを保存します。これで、ファイル `~/.aws/credentials` はローカルの開発システムに存在しているはずです。このファイルには、特定の名前付き[プロファイルが指定されていない場合に SDK for Kotlin が使用する [デフォルト]](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html#file-format-profile) プロファイルが含まれています。

1. [AWS アクセスポータルにサインインする](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosignin.html)

1.  AWS アクセスポータルから IAM ロールの認証情報をコピーするには、[「手動認証情報更新](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtogetcredentials.html#how-to-get-temp-credentials)」の見出しにある手順に従ってください。

   1. リンク先の手順のステップ 4 で、開発ニーズに合ったアクセスを許可する IAM ロールの名前を選択します。通常、このロールには **PowerUserAccess** や **Developer** などの名前が付いています。

   1. ステップ 7 で、**[ AWS 認証情報ファイルにプロファイルを手動追加]** オプションを選択し、内容をコピーします。

1. コピーした認証情報をローカル `credentials` ファイルに貼り付け、生成されたプロファイル名を削除します。ファイルは以下のようになります。

   ```
   [default]
   aws_access_key_id=AKIAIOSFODNN7EXAMPLE
   aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
   ```

1. `credentials` ファイルを保存します。

SDK for Kotlin は、サービスクライアントを作成し、各リクエストに使用するときに、これらの一時的な認証情報にアクセスします。ステップ 5a で選択した IAM ロールの設定により、[一時的な認証情報の有効期間](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosessionduration.html)が決まります。最大期間は 12 時間です。

一時的な認証情報の有効期限が切れたら、ステップ 4～7 を繰り返します。