

# データ転送ターミナルと IAM の連携方法
<a name="security-iam-service-with-iam"></a>

IAM を使用して データ転送ターミナルへのアクセスを管理する前に、データ転送ターミナル で使用できる IAM 機能について理解しておく必要があります。


| IAM の特徴量 | データ転送ターミナルのサポート | 
| --- | --- | 
|   [アイデンティティベースのポリシー](#security-iam-service-with-iam-id-based-policies)   |  あり  | 
|   [リソースベースのポリシー](#security-iam-service-with-iam-resource-based-policies)   |  なし  | 
|   [ポリシーアクション](#security-iam-service-with-iam-id-based-policies-actions)   |  あり  | 
|   [ポリシーリソース](#security-iam-service-with-iam-id-based-policies-resources)   |  あり  | 
|   [ポリシー条件キー](#security-iam-service-with-iam-id-based-policies-conditionkeys)   |  あり  | 
|   [ACL](#security-iam-service-with-iam-acls)   |  なし  | 
|   [ABAC (ポリシー内のタグ)](#security-iam-service-with-iam-tags)   |  いいえ  | 
|   [一時的な認証情報](#security-iam-service-with-iam-roles-tempcreds)   |  あり  | 
|   [プリンシパル権限](#security-iam-service-with-iam-principal-permissions)   |  いいえ  | 
|   [サービスロール](#security-iam-service-with-iam-roles-service)   |  いいえ  | 
|   [サービスリンクロール](#security-iam-service-with-iam-roles-service-linked)   |  不可  | 

データ転送ターミナルおよびその他の AWS サービスと大部分の IAM 機能の連携についての概要は、「*IAM ユーザーガイド*」の「[IAM と連携する AWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

## データ転送ターミナルのアイデンティティベースのポリシー
<a name="security-iam-service-with-iam-id-based-policies"></a>

 **ID ベースのポリシーのサポート:** あり

アイデンティティベースポリシーは、IAM ユーザー、ユーザーグループ、ロールなど、アイデンティティにアタッチできる JSON 許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件をコントロールします。アイデンティティベースポリシーの作成方法については、「*IAM ユーザーガイド*」の「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)」を参照してください。

IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。プリンシパルはアタッチされているユーザーまたはロールに適用されるため、アイデンティティベースのポリシーでは指定できません。JSON ポリシーで使用できるすべての要素について学ぶには、「*IAM ユーザーガイド*」の「[IAM JSON ポリシーの要素のリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)」を参照してください。

### データ転送ターミナルのアイデンティティベースのポリシーの例
<a name="security-iam-service-with-iam-id-based-policies-examples"></a>

データ転送ターミナルのアイデンティティベースポリシーの例を確認するには、「[AWS データ転送ターミナルのアイデンティティベースのポリシーの例](security-iam-id-based-policy-examples.md)」を参照してください。

## データ転送ターミナル内のリソースベースのポリシー
<a name="security-iam-service-with-iam-resource-based-policies"></a>

 **リソースベースのポリシーのサポート:** なし

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM *ロールの信頼ポリシー*や Amazon S3 *バケットポリシー*があげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスをコントロールできます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーで、[[specify a principal]](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) (プリンシパルを指定する) 必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーティッドユーザー、または AWS のサービスを含めることができます。

クロスアカウントアクセスを有効にするには、全体のアカウント、または別のアカウントの IAM エンティティを、リソースベースのポリシーのプリンシパルとして指定します。リソースベースのポリシーにクロスアカウントのプリンシパルを追加しても、信頼関係は半分しか確立されない点に注意してください。プリンシパルとリソースが異なる AWS アカウントにある場合、信頼されたアカウントの IAM 管理者は、リソースにアクセスするための許可をプリンシパルエンティティ (ユーザーまたはロール) に付与する必要もあります。IAM 管理者は、ID ベースのポリシーをエンティティにアタッチすることで許可を付与します。ただし、リソースベースのポリシーで、同じアカウントのプリンシパルへのアクセス権が付与されている場合は、アイデンティティベースのポリシーをさらに付与する必要はありません。詳細については、「*IAM ユーザーガイド*」の「[IAM でのクロスアカウントリソースアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)」を参照してください。

## データ転送ターミナルのポリシーアクション
<a name="security-iam-service-with-iam-id-based-policies-actions"></a>

 **ポリシーアクションのサポート:** あり

管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

JSON ポリシーの `Action` 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。ポリシーアクションの名前は通常、関連する AWS API オペレーションと同じです。一致する API オペレーションのない*アクセス許可のみのアクション*など、いくつかの例外があります。また、ポリシーに複数のアクションが必要なオペレーションもあります。これらの追加アクションは*依存アクション*と呼ばれます。

このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。

データ転送ターミナルアクションのリストを確認するには、「*サービス認可リファレンス*」の「[AWS データ転送ターミナルで定義されるアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_your_service.html#your_service-actions-as-permissions)」を参照してください。

データ転送ターミナルのポリシーアクションは、アクションの前に次のプレフィックスを使用します。

```
datatransferterminal
```

単一のステートメントで複数のアクションを指定するには、アクションをカンマで区切ります。

```
"Action": [
      "datatransferterminal:action1",
      "datatransferterminal:action2"
         ]
```

データ転送ターミナルのアイデンティティベースポリシーの例を確認するには、「[AWS データ転送ターミナルのアイデンティティベースのポリシーの例](security-iam-id-based-policy-examples.md)」を参照してください。

## データ転送ターミナルのポリシーリソース
<a name="security-iam-service-with-iam-id-based-policies-resources"></a>

 **ポリシーリソースのサポート:** あり

管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件**下で**アクション**を実行できるかということです。

`Resource` JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ステートメントには`Resource` または `NotResource` 要素を含める必要があります。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。これは*リソースレベルの許可*と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

オペレーションのリスト化など、リソースレベルの許可をサポートしないアクションの場合はステートメントがすべてのリソースに適用されることを表示するワイルドカード (\$1) を使用します。

```
"Resource": "*"
```

データ転送ターミナルリソースのタイプとその ARN のリストを確認するには、「*サービス認可リファレンス*」の「[AWS データ転送ターミナルで定義されるリソース](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_your_service.html#your_service-resources-for-iam-policies)」を参照してください。どのアクションで各リソースの ARN を指定できるかについては、「[AWS データ転送ターミナルで定義されるアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_your_service.html#your_service-actions-as-permissions)」を参照してください。

データ転送ターミナルのアイデンティティベースポリシーの例を確認するには、「[AWS データ転送ターミナルのアイデンティティベースのポリシーの例](security-iam-id-based-policy-examples.md)」を参照してください。

## データ転送ターミナルのポリシー条件キー
<a name="security-iam-service-with-iam-id-based-policies-conditionkeys"></a>

 **サービス固有のポリシー条件キーのサポート:** あり

管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

`Condition` 要素（または `Condition`block) lets you specify conditions in which a statement is in effect. The `Condition` 要素はオプションです。イコールや未満などの[条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。

1 つのステートメントに複数の `Condition` 要素を指定する場合、または 1 つの `Condition` 要素に複数のキーを指定する場合、AWS では `AND` 論理演算子を使用してそれらを評価します。単一の条件キーに複数の値を指定する場合、AWS では `OR` 論理演算子を使用して条件を評価します。ステートメントのアクセス許可が付与される前に、すべての条件が満たされる必要があります。

条件を指定する際にプレースホルダー変数も使用できます。例えば IAM ユーザーに、IAM ユーザー名がタグ付けされている場合のみリソースにアクセスできる権限を付与することができます。詳細については、「*IAM ユーザーガイド*」の「[‬IAM ポリシーの要素: 変数およびタグ‭](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html)」‬を参照してください。

 AWS はグローバル条件キーとサービス固有の条件キーをサポートしています。すべての AWS グローバル条件キーを確認するには、*IAM ユーザーガイド*の[AWS グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)を参照してください。

データ転送ターミナルの条件キーのリストを確認するには、「*サービス認可リファレンス*」の「[AWS データ転送ターミナルの条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_your_service.html#your_service-policy-keys)」を参照してください。条件キーを使用できるアクションとリソースについては、「[AWS データ転送ターミナルで定義されるアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_your_service.html#your_service-actions-as-permissions)」を参照してください。

データ転送ターミナルのアイデンティティベースポリシーの例を確認するには、「[AWS データ転送ターミナルのアイデンティティベースのポリシーの例](security-iam-id-based-policy-examples.md)」を参照してください。

## データ転送ターミナルの ACL
<a name="security-iam-service-with-iam-acls"></a>

 **ACL のサポート:** なし

アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするためのアクセス許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

## データ転送ターミナルでの ABAC
<a name="security-iam-service-with-iam-tags"></a>

 **ABAC (ポリシー内のタグ) のサポート:** なし

属性ベースのアクセス制御 (ABAC) は、属性に基づいてアクセス許可を定義する認可戦略です。AWS では、属性は*タグ*と呼ばれます。タグは、IAM エンティティ (ユーザーまたはロール)、および多数の AWS リソースにアタッチできます。エンティティとリソースのタグ付けは、ABAC の最初の手順です。次に、プリンシパルのタグが、アクセスを試行するリソースのタグと一致したときにオペレーションを許可するよう、ABAC ポリシーを設計します。

ABAC は、急成長する環境や、ポリシー管理が煩雑になる状況で役に立ちます。

タグに基づいてアクセスを制御するには、`aws:ResourceTag/[replaceable]`key-name` `, , or aws:TagKeys condition keys.` を使用するポリシーの[条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)のタグ情報を指定します。サービスがすべてのリソースタイプで 3 つの条件キーすべてをサポートしている場合、値はサービスに対して **Yes** です。サービスが一部のリソースタイプに対してのみ 3 つの条件キーのすべてをサポートする場合、値は「**部分的**」になります。ABAC の詳細については、「*IAM ユーザーガイド*」の「[ABAC 認可でアクセス許可を定義する](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)」を参照してください。ABAC をセットアップする手順を説明するチュートリアルについては、「*IAM ユーザーガイド*」の「[属性ベースのアクセスコントロール (ABAC) を使用する](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html)」を参照してください。

### データ転送ターミナルでの一時的な認証情報の使用
<a name="security-iam-service-with-iam-roles-tempcreds"></a>

 **一時的な認証情報のサポート:** あり

AWS サービスには、一時的な認証情報を使用してサインインしても機能しないものがあります。一時的な認証情報を利用できる AWS のサービスを含めた詳細情報については、「*IAM ユーザーガイド*」の「[IAM と連携する AWS サービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

ユーザー名とパスワード以外の方法で AWS マネジメントコンソールにサインインする場合は、一時認証情報を使用していることになります。例えば、会社の Single Sign-On (SSO) リンクを使用して AWS にアクセスすると、そのプロセスは自動的に一時的な認証情報を作成します。また、ユーザーとしてコンソールにサインインしてからロールを切り替える場合も、一時的な認証情報が自動的に作成されます。ロールの切り替えに関する詳細については、「*IAM ユーザーガイド*」の「[ユーザーから IAM ロールに切り替える (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)」を参照してください。

一時的な認証情報は、AWS CLI または AWS API を使用して手動で作成できます。作成後、一時認証情報を使用して AWS にアクセスできるようになります。AWSは、長期的なアクセスキーを使用する代わりに、一時認証情報を動的に生成することをお勧めします。詳細については、「[IAM の一時的セキュリティ認証情報](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)」を参照してください。

### データ転送ターミナルのクロスサービスプリンシパルアクセス許可
<a name="security-iam-service-with-iam-principal-permissions"></a>

 **転送アクセスセッション (FAS) のサポート:** なし

IAM ユーザーまたはロールを使用して AWS でアクションを実行するユーザーは、プリンシパルとみなされます。一部のサービスを使用する際に、アクションを実行することで、別のサービスの別のアクションがトリガーされることがあります。FAS は、AWS サービスを呼び出すプリンシパルの権限を、AWS サービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、サービスが、完了するために他の AWS サービスまたはリソースとのやりとりを必要とするリクエストを受け取ったときにのみ行われます。この場合、両方のアクションを実行するためのアクセス許可が必要です。FAS リクエストを行う際のポリシーの詳細については、「[転送アクセスセッション](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)」を参照してください。

### データ転送ターミナルのサービスロール
<a name="security-iam-service-with-iam-roles-service"></a>

 **サービスロールのサポート:** なし

サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける [IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)です。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、「**IAM ユーザーガイド」の「[AWS のサービスにアクセス許可を委任するロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)」を参照してください。

**警告**  
サービスロールの権限を変更すると、データ転送ターミナルの機能が停止する可能性があります。データ転送ターミナルが指示する場合以外は、サービスロールを編集しないでください。

### データ転送ターミナルのサービスにリンクされたロール
<a name="security-iam-service-with-iam-roles-service-linked"></a>

 **サービスにリンクされたロールのサポート:** なし

サービスにリンクされたロールは、AWS のサービスにリンクされているサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスにリンクされたロールは、AWS アカウント内に表示され、サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールのアクセス許可を表示できますが、編集することはできません。

サービスにリンクされたロールの作成または管理の詳細については、「[IAM と提携する AWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。表の「**サービスリンクロール**」列に `Yes` と記載されたサービスを見つけます。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、**[はい]** リンクを選択します。

# AWS データ転送ターミナルのアイデンティティベースのポリシーの例
<a name="security-iam-id-based-policy-examples"></a>

デフォルトでは、ユーザーおよびロールにはデータ転送ターミナルリソースを作成または変更するアクセス許可がありません。また、AWS マネジメントコンソール、AWS コマンドラインインターフェイス (AWS CLI)、または AWS API を使用してタスクを実行することもできません。IAM 管理者は、リソースで必要なアクションを実行するための権限をユーザーに付与する IAM ポリシーを作成できます。その後、管理者はロールに IAM ポリシーを追加し、ユーザーはロールを引き継ぐことができます。

これらサンプルの JSON ポリシードキュメントを使用して、IAM アイデンティティベースのポリシーを作成する方法については、「*IAM ユーザーガイド*」の「[IAM ポリシーを作成する (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html)」を参照してください。

定義されるアクションとリソースタイプ (リソースタイプごとの ARN の形式など) の詳細については、「**サービス認可リファレンス」の「[アクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_your_service.html)」を参照してください。

**Topics**
+ [ポリシーに関するベストプラクティス](#security-iam-service-with-iam-policy-best-practices)
+ [データ転送ターミナルコンソールの使用](#security-iam-id-based-policy-examples-console)
+ [自分の権限の表示をユーザーに許可する](#security-iam-id-based-policy-examples-view-own-permissions)

## ポリシーに関するベストプラクティス
<a name="security-iam-service-with-iam-policy-best-practices"></a>

アイデンティティベースのポリシーは、ユーザーのアカウント内で誰かがデータ転送ターミナルリソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションを実行すると、AWS アカウントに追加料金が発生する可能性があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
+  **AWS マネージドポリシーを使用して開始し、最小特権の許可に移行する** – ユーザーとワークロードへの許可の付与を開始するには、多くの一般的なユースケースのために許可を付与する AWS マネージドポリシーを使用します。これらは AWS アカウントで使用できます。ユースケースに固有の AWS カスタマー管理ポリシーを定義して、アクセス許可を絞り込むことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能の AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。
+  **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。
+  **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。また、AWS CloudFormation などの特定の AWS サービスを介して使用する場合、条件を使用してサービスアクションへのアクセスを許可することもできます。詳細については、*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素: 条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)」を参照してください。
+  **IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer でポリシーを検証する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。
+  **多要素認証 (MFA) を要求する** – AWS アカウントで IAM ユーザーまたはルートユーザーを要求するシナリオがある場合は、セキュリティを強化するために MFA をオンにします。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA を使用した安全な API アクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

## データ転送ターミナルコンソールの使用
<a name="security-iam-id-based-policy-examples-console"></a>

AWS データ転送ターミナルコンソールにアクセスするには、許可の最小限のセットが必要です。これらの許可では、AWS アカウントでのデータ転送ターミナルリソースに関する詳細のリスト化と表示が許可されている必要があります。最小限必要な許可よりも制限が厳しいアイデンティティベースのポリシーを作成すると、そのポリシーを持つエンティティ (ユーザーまたはロール) に対してコンソールが意図したとおりに機能しません。

AWS CLI または AWS API のみを呼び出すユーザーには、コンソールの最小アクセス許可を付与する必要はありません。代わりに、実行しようとしている API オペレーションに一致するアクションのみへのアクセスを許可します。

ユーザーとロールが引き続きデータ転送ターミナルコンソールを使用できるようにするには、エンティティにデータ転送ターミナル ` ConsoleAccess ` または ` ReadOnly ` AWS 管理ポリシーもアタッチします。詳細については、「*IAM ユーザーガイド*」の「[ユーザーへのアクセス許可の追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)」を参照してください。

## 自分の権限の表示をユーザーに許可する
<a name="security-iam-id-based-policy-examples-view-own-permissions"></a>

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI もしくは AWS API を使用してプログラム的に、このアクションを完了するための許可が含まれています。

```
{
    "Version": "2012-10-17", 		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

# AWS データ転送ターミナルのアイデンティティとアクセスのトラブルシューティング
<a name="security-iam-troubleshoot"></a>

次の情報は、データ転送ターミナルと IAM の使用に伴って発生する可能性がある一般的な問題の診断や修復に役立ちます。

**Topics**
+ [データ転送ターミナルでアクションを実行する権限がありません](#security-iam-troubleshoot-no-permissions)
+ [AWS アカウントの外部のユーザーにデータ転送ターミナルリソースへのアクセスを許可したい](#security-iam-troubleshoot-cross-account-access)

## データ転送ターミナルでアクションを実行する権限がありません
<a name="security-iam-troubleshoot-no-permissions"></a>

AWS データ転送ターミナルコンソールで予約を表示またはスケジュールできない場合は、必要なアクセス許可がない可能性があります。アカウント管理者に連絡して、アクセスと適切なアクセス許可を付与する IAM ID ポリシーを設定してください。

## AWS アカウントの外部のユーザーにデータ転送ターミナルリソースへのアクセスを許可したい
<a name="security-iam-troubleshoot-cross-account-access"></a>

他のアカウントのユーザーや組織外の人が、リソースにアクセスするために使用できるロールを作成できます。ロールの引き受けを委託するユーザーを指定できます。リソースベースのポリシーまたはアクセスコントロールリスト (ACL) をサポートするサービスの場合、それらのポリシーを使用して、リソースへのアクセスを付与できます。

詳細については、以下を参照してください。
+ データ転送ターミナルがこれらの機能をサポートしているかどうかについては、「[データ転送ターミナルと IAM の連携方法](security-iam-service-with-iam.md)」を参照してください。
+ 所有している AWS アカウント全体のリソースへのアクセス権を提供する方法については、IAM ユーザーガイドの[所有している別の AWS アカウントへのアクセス権を IAM ユーザーに提供](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)を参照してください。
+ リソースへのアクセスをサードパーティーの AWS アカウントに提供する方法については、IAM ユーザーガイドの「[サードパーティーが所有する AWS アカウントへのアクセスの提供](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)」を参照してください。
+ ID フェデレーションを介してアクセスを提供する方法については、*IAM ユーザーガイド* の [外部で認証されたユーザー (ID フェデレーション) へのアクセスの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) を参照してください。
+ クロスアカウントアクセスにおけるロールとリソースベースのポリシーの使用方法の違いについては、*IAM ユーザーガイド* の [IAM でのクロスアカウントのリソースへのアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) を参照してください。

# データ転送ターミナル API リファレンス: アクションとリソース
<a name="datadepot-api-references"></a>

AWS Identity and Access Management (IAM) ポリシーを作成する際、このページは、AWS データ転送ターミナル API オペレーション、実行するアクセス許可を付与する対象アクション、およびアクセス許可を付与できる AWS リソースの関係を理解するのに役立ちます。

一般的に、データ転送ターミナルのアクセス許可をポリシーに追加する方法は次のとおりです。
+ `Action` エレメントにアクションを指定します。`datatransferterminal:` 値にはプレフィックスと API オペレーション名が含まれます。例えば、`datatransferterminal:CreateTask`。
+ `Resource` エレメントのアクションに関連する AWS リソースを指定します。

データ転送ターミナルポリシーで AWS 条件キーを使用することもできます。すべての AWS キーのリストについては、「IAM ユーザーガイド」の「[利用可能なキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys)」を参照してください。

 **データ転送ターミナル API オペレーションと対応するアクション** 

CreateTransferTeam  
+  **アクション:**`datatransferterminal:CreateTransferTeam` 

   **リソース:** `None` 

GetTransferTeam  
+  **アクション:**`datatransferterminal:GetTransferTeam` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

UpdateTransferTeam  
+  **アクション:**`datatransferterminal:UpdateTransferTeam` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

DeleteTransferTeam  
+  **アクション:**`datatransferterminal:DeleteTransferTeam` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

ListTransferTeams  
+  **アクション:**`datatransferterminal:ListTransferTeams` 

   **リソース:** `None` 

RegisterPerson  
+  **アクション:**`datatransferterminal:RegisterPerson` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

GetPerson  
+  **アクション:**`datatransferterminal:GetPerson` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/person/$[replaceable]`PersonId````

   **依存アクション:** `datatransferterminal:GetTransferTeam` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

DeregisterPerson  
+  **アクション:**`datatransferterminal:DeregisterPerson` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/person/$[replaceable]`PersonId````

   **依存アクション:** `datatransferterminal:GetTransferTeam` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

ListPersons  
+  **アクション:**`datatransferterminal:ListPersons` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

CreateReservation  
+  **アクション:**`datatransferterminal:CreateReservation` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

   **依存アクション:** `datatransferterminal:GetTransferTeam` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

   **依存アクション:** `datatransferterminal:GetPerson` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/person/$[replaceable]`PersonId````

   **依存アクション:** `datatransferterminal:GetFacility` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:::facility/$[replaceable]`FacilityId````

GetReservation  
+  **アクション:**`datatransferterminal:GetReservation` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/reservation/$[replaceable]`ReservationId````

   **依存アクション:** `datatransferterminal:GetTransferTeam` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

UpdateReservation  
+  **アクション:**`datatransferterminal:UpdateReservation` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/reservation/$[replaceable]`ReservationId````

   **依存アクション:** `datatransferterminal:GetTransferTeam` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

   **依存アクション:** `datatransferterminal:GetPerson` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/person/$[replaceable]`PersonId````

DeleteReservation  
+  **アクション:**`datatransferterminal:DeleteReservation` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId`/person/$[replaceable]`PersonId````

   **依存アクション:** `datatransferterminal:GetTransferTeam` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

ListReservations  
+  **アクション:**`datatransferterminal:ListReservations` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:$[replaceable]`Region`:$[replaceable]`Account`:transfer-team/$[replaceable]`TransferTeamId````

ListFacilities  
+  **アクション:**`datatransferterminal:ListFacilities` 

   **リソース:** `None` 

GetFacility  
+  **アクション:**`datatransferterminal:GetFacility` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:::facility/$[replaceable]`FacilityId````

GetFacilityAvailability  
+  **アクション:**`datatransferterminal:GetFacilityAvailability` 

   **リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:::facility/$[replaceable]`FacilityId`/availability` 

   **依存アクション:** `datatransferterminal:GetFacility` 

   **依存リソース:** `arn:aws::$[replaceable]`Partition`:datatransferterminal:::facility/$[replaceable]`FacilityId`/availability` 