

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

# プログラマチックアクセス権を付与する
<a name="sdk-programmatic-access"></a>

このガイドの AWS CLI および コード例は、ローカルコンピュータまたは Amazon Elastic Compute Cloud インスタンスなどの他の AWS 環境で実行できます。例を実行するには、例が使用する AWS SDK オペレーションへのアクセスを許可する必要があります。

**Topics**
+ [ローカルコンピュータでのコードの実行](#programmatic-access-general)
+ [AWS 環境でのコードの実行](#sdk-aws-environments)

## ローカルコンピュータでのコードの実行
<a name="programmatic-access-general"></a>

ローカルコンピュータでコードを実行するには、短期間の認証情報を使用して AWS SDK オペレーションへのアクセス権をユーザーに付与することをお勧めします。ローカルコンピュータでの AWS CLI および コード例の実行に関する具体的な情報については、「」を参照してください[ローカルコンピュータでのプロファイルの使用](#programmatic-access-rek-examples)。

ユーザーが の AWS 外部で を操作する場合は、プログラムによるアクセスが必要です AWS マネジメントコンソール。プログラムによるアクセスを許可する方法は、 がアクセスするユーザーのタイプによって異なります AWS。

ユーザーにプログラムによるアクセス権を付与するには、以下のいずれかのオプションを選択します。


****  

| プログラムによるアクセス権を必要とするユーザー | 目的 | 方法 | 
| --- | --- | --- | 
| IAM | (推奨) コンソール認証情報を一時的な認証情報として使用して AWS CLI、、 AWS SDKs、または AWS APIs。 |  使用するインターフェイスの指示に従ってください。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/sdk-programmatic-access.html)  | 
|  ワークフォースアイデンティティ (IAM アイデンティティセンターで管理されているユーザー)  | 一時的な認証情報を使用して AWS CLI、、 AWS SDKs、または AWS APIs。 |  使用するインターフェイスの指示に従ってください。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/sdk-programmatic-access.html)  | 
| IAM | 一時的な認証情報を使用して AWS CLI、、 AWS SDKs、または AWS APIs。 | 「IAM [ユーザーガイド」の「 AWS リソースでの一時的な認証情報](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)の使用」の手順に従います。 | 
| IAM | (非推奨)長期認証情報を使用して、 AWS CLI、 AWS SDKs、または AWS APIs。 |  使用するインターフェイスの指示に従ってください。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/sdk-programmatic-access.html)  | 

### ローカルコンピュータでのプロファイルの使用
<a name="programmatic-access-rek-examples"></a>

このガイドの AWS CLI および コード例は、 で作成した短期認証情報を使用して実行できます[ローカルコンピュータでのコードの実行](#programmatic-access-general)。認証情報や他の設定情報を取得するため、たとえばサンプルでは `profile-name` という名前のプロファイルを使用しています: 

```
session = boto3.Session(profile_name="profile-name")
rekognition_client = session.client("rekognition")
```

プロファイルが表すユーザーには、Rekognition SDK オペレーションおよび例で必要なその他の AWS SDK オペレーションを呼び出すアクセス許可が必要です。

 AWS CLI および コード例で動作するプロファイルを作成するには、次のいずれかを選択します。作成するプロファイルの名前が `profile-name` であることを確かめてください。
+ IAM が管理するユーザー - 「[IAM ロール (AWS CLI) の切り替え](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-cli.html)」の手順に従います。
+ ワークフォース ID (ユーザーが管理 AWS IAM アイデンティティセンター) — [使用する AWS CLI の設定 AWS IAM アイデンティティセンター](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html)の手順に従います。コード例については統合開発環境 (IDE) を使用することが推奨されます。こちらは、IAM Identity Center による認証を許可する AWS Toolkit をサポートしています。Java の例については「[Start building with Java](https://aws.amazon.com/developer/language/java/)」を参照してください。Python の例については「[Start building with Python](https://aws.amazon.com/developer/tools/#IDE_and_IDE_Toolkits)」を参照してください。その他の詳細については「[IAM Identity Center credentials](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html)」を参照してください。

**注記**  
コードを使用して、短期間の認証情報を取得できます。詳細については「[IAM ロール (AWS API) の切り替え](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_use_switch-role-api.html)」を参照してください。IAM Identity Center の場合は、「[Getting IAM role credentials for CLI access](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtogetcredentials.html)」にある手順に従って、ロールの短期間の認証情報を取得します。

## AWS 環境でのコードの実行
<a name="sdk-aws-environments"></a>

 AWS Lambda 関数で実行されている本番コードなどの AWS 環境で、ユーザー認証情報を使用して AWS SDK 呼び出しに署名しないでください。代わりに、コードに必要なアクセス権限を定義するロールを設定します。次に、コードを実行する環境にそのロールをアタッチします。ロールをアタッチして一時的な認証情報を利用できるようにする方法は、コードを実行する環境によって異なります。
+ AWS Lambda 関数 — Lambda 関数の実行ロールを引き受けるときに Lambda が自動的に関数に提供する一時的な認証情報を使用します。認証情報は Lambda の環境変数で使用できます。プロファイルを指定する必要はありません。詳細については、「[Lambda 実行ロール](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html)」を参照してください。
+ Amazon EC2 - Amazon EC2 のインスタンスメタデータエンドポイント認証情報プロバイダーを使用します。このプロバイダーは、Amazon EC2 インスタンスにアタッチされた Amazon EC2 *インスタンスプロファイル*を使用して、認証情報を自動的に生成して更新します。詳細については、「[Amazon EC2 インスタンスで実行されるアプリケーションに IAM ロールを使用してアクセス許可を付与する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)」を参照してください。
+ Amazon Elastic Container Service - コンテナ認証情報プロバイダーを使用します。Amazon ECS は認証情報をメタデータエンドポイントに送信して更新します。指定する*タスク IAM ロール*は、アプリケーションが使用する認証情報を管理するための戦略を提供します。詳細については、「[Interact with AWS services](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html)」を参照してください。

認証情報プロバイダーの詳細については、「[標準認証情報プロバイダー](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html)」を参照してください。