

# データ転送ターミナルと 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) を使用してリソースを指定します。これは*リソースレベルの許可*と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

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

```
"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` と記載されたサービスを見つけます。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、**[はい]** リンクを選択します。