

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

# Elastic Load Balancing で利用できる IAM 機能
<a name="security_iam_service-with-iam"></a>

IAM を使用して Elastic Load Balancing へのアクセスを管理する前に、Elastic Load Balancing で使用できる IAM 機能について学びます。


**Elastic Load Balancing で使用できる IAM 機能**  

| IAM 機能 | Elastic Load Balancing サポート | 
| --- | --- | 
|  [アイデンティティベースのポリシー](#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)  |   はい  | 

## Elastic Load Balancing のアイデンティティベースのポリシー
<a name="security_iam_service-with-iam-id-based-policies"></a>

**アイデンティティベースのポリシーのサポート:** あり

アイデンティティベースポリシーは、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)」を参照してください。

## Elastic Load Balancing 内のリソースベースのポリシー
<a name="security_iam_service-with-iam-resource-based-policies"></a>

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

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

クロスアカウントアクセスを有効にするには、全体のアカウント、または別のアカウントの IAM エンティティを、リソースベースのポリシーのプリンシパルとして指定します。詳細については、IAM ユーザーガイド**の[IAM でのクロスアカウントリソースアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)を参照してください。

## Elastic Load Balancing のポリシーアクション
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

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

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

JSON ポリシーの `Action` 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。

Elastic Load Balancing アクションのリストを表示するには、「*サービス認可リファレンス*」の「[Elastic Load Balancing V2 で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancingv2.html#awselasticloadbalancingv2-actions-as-permissions)」および「[Elastic Load Balancing V1 で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancing.html#awselasticloadbalancing-actions-as-permissions)」を参照してください。

Elastic Load Balancing のポリシーアクションは、アクションの前に以下のプレフィックス を使用します。

```
elasticloadbalancing
```

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

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

ワイルドカード (\$1) を使用して複数アクションを指定できます。例えば、`Describe` という単語で始まるすべてのアクションを指定するには次のアクションを含めます。

```
"Action": "elasticloadbalancing:Describe*"
```

Elastic Load Balancing の API アクションの詳細なリストについては、次のドキュメントを参照してください。
+ Application Load Balancer、Network Load Balancer、および　Gateway Load Balancer — [API リファレンスバージョン 2015-12-01](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/)
+ Classic Load Balancer — [API リファレンスバージョン 2012-06-01](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/)

## Elastic Load Balancing のポリシーリソース
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

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

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

`Resource` JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。リソースレベルのアクセス許可をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\$1) を使用します。

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

複数のリソースをサポートする Elastic Load Balancing API アクションがあります。複数リソースを単一ステートメントで指定するには、ARN をカンマで区切ります。

```
"Resource": [
    "resource1",
    "resource2"
]
```

Elastic Load Balancing リソースタイプとその ARN のリストを確認するには、「*サービス認可リファレンス*」の「[Elastic Load Balancing V2 で定義されるリソース](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancingv2.html#awselasticloadbalancingv2-resources-for-iam-policies)」および「[Elastic Load Balancing V1 で定義されるリソース](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancing.html#awselasticloadbalancing-resources-for-iam-policies)」を参照してください。　 各リソースの ARN を指定できるアクションについては、「[Elastic Load Balancing V2 で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancingv2.html#awselasticloadbalancingv2-actions-as-permissions)」および「[Elastic Load Balancing V1 で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancing.html#awselasticloadbalancing-actions-as-permissions)」を参照してください。

## Elastic Load Balancing のポリシー条件キー
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

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

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

`Condition` 要素は、定義された基準に基づいてステートメントが実行される時期を指定します。イコールや未満などの[条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。すべての AWS グローバル条件キーを確認するには、*「IAM ユーザーガイド*」の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。

Elastic Load Balancing の条件キーのリストについては、「*サービス認可リファレンス*」の「[Elastic Load Balancing V2 の条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancingv2.html#awselasticloadbalancingv2-policy-keys)」および「[Elastic Load Balancing V1 の条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancing.html#awselasticloadbalancing-policy-keys)」を参照してください。どのアクションおよびリソースと条件キーを使用できるかについては、「[Elastic Load Balancing V2 で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancingv2.html#awselasticloadbalancingv2-actions-as-permissions)」および「[Elastic Load Balancing V1 で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticloadbalancing.html#awselasticloadbalancing-actions-as-permissions)」を参照してください。

**Topics**
+ [elasticloadbalancing:ListenerProtocol](#listenerprotocol-condition)
+ [elasticloadbalancing:SecurityPolicy](#securitypolicy-condition)
+ [elasticloadbalancing:Scheme](#scheme-condition)
+ [elasticloadbalancing:SecurityGroup](#securitygroup-condition)
+ [elasticloadbalancing:Subnet](#subnet-condition)
+ [elasticloadbalancing:ResourceTag](#resourcetag-condition)

### elasticloadbalancing:ListenerProtocol 条件キー
<a name="listenerprotocol-condition"></a>

`elasticloadbalancing:ListenerProtocol` 条件キーは、作成と使用が可能なリスナーのタイプを定義する条件として使用できます。このポリシーは、Application Load Balancer、Network Load Balancer、Classic Load Balancer で使用できます。以下のアクションでこの条件キーがサポートされています。

**API バージョン 2015-12-01**
+ `CreateListener`
+ `ModifyListener`

**API バージョン 2012-06-01**
+ `CreateLoadBalancer`
+ `CreateLoadBalancerListeners`

次のポリシー例では、ユーザーは Application Load Balancer のリスナーの HTTPS プロトコルと、Network Load Balancer のリスナーの TLS プロトコルを選択する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "elasticloadbalancing:CreateListener",
            "elasticloadbalancing:ModifyListener"
        ],
        "Resource": "*",
        "Condition": {
            "ForAnyValue:StringEquals": {
                "elasticloadbalancing:ListenerProtocol": [
                    "HTTPS",
                    "TLS"
                ]
            }
        }
    }
}
```

------

Classic Load Balancer を使用すると、1 回の呼び出しで複数のリスナーを指定できます。したがって、次の例に示すように、ポリシーは[複数値のコンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition_examples-multi-valued-context-keys.html)を使用する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "elasticloadbalancing:CreateLoadBalancer",
                "elasticloadbalancing:CreateLoadBalancerListeners"
            ],
            "Resource": "*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "elasticloadbalancing:ListenerProtocol": [
                        "TCP",
                        "HTTP",
                        "HTTPS"
                    ]
                }
            }
        }
    ]
}
```

------

### elasticloadbalancing:SecurityPolicy 条件キー
<a name="securitypolicy-condition"></a>

`elasticloadbalancing:SecurityPolicy` 条件キーは、ロードバランサーで特定のセキュリティポリシーを定義して適用する条件として使用できます。このポリシーは、Application Load Balancer、Network Load Balancer、Classic Load Balancer で使用できます。以下のアクションでこの条件キーがサポートされています。

**API バージョン 2015-12-01**
+ `CreateListener`
+ `ModifyListener`

**API バージョン 2012-06-01**
+ `CreateLoadBalancerPolicy`
+ `SetLoadBalancerPoliciesOfListener`

次のポリシー例では、ユーザーは Application Load Balancer と Network Load Balancer のに対して、指定されたセキュリティポリシーの 1 つを選択する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "elasticloadbalancing:CreateListener",
            "elasticloadbalancing:ModifyListener"
        ],
        "Resource": "*",
        "Condition": {
            "ForAnyValue:StringEquals": {
                "elasticloadbalancing:SecurityPolicy": [
                    "ELBSecurityPolicy-TLS13-1-2-2021-06",
                    "ELBSecurityPolicy-TLS13-1-2-Res-2021-06",
                    "ELBSEcurityPolicy-TLS13-1-1-2021-06"
                ]
            }
        }
    }
}
```

------

### elasticloadbalancing:Scheme 条件キー
<a name="scheme-condition"></a>

`elasticloadbalancing:Scheme` 条件キーは、ロードバランサーの作成時に選択できるスキームを、定義する条件として使用できます。このポリシーは、Application Load Balancer、Network Load Balancer、Classic Load Balancer で使用できます。以下のアクションでこの条件キーがサポートされています。

**API バージョン 2015-12-01**
+ `CreateLoadBalancer`

**API バージョン 2012-06-01**
+ `CreateLoadBalancer`

以下のポリシーの例では、ユーザーは、指定されたスキームをロードバランサー用に選択する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": "elasticloadbalancing:CreateLoadBalancer",
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "elasticloadbalancing:Scheme": "internal"
            }
        }
    }
}
```

------

### `elasticloadbalancing:SecurityGroup` 条件キー
<a name="securitygroup-condition"></a>

**重要**  
Elastic Load Balancing はすべて大文字のセキュリティグループ ID を受け入れます。ただし、`StringEqualsIgnoreCase` のように大文字と小文字を区別しない適切な条件演算子を使用してください。

`elasticloadbalancing:SecurityGroup` 条件キーは、ロードバランサーに適用できるセキュリティグループを、定義する条件として使用できます。このポリシーは、Application Load Balancer、Network Load Balancer、Classic Load Balancer で使用できます。以下のアクションでこの条件キーがサポートされています。

**API バージョン 2015-12-01**
+ `CreateLoadBalancer`
+ `SetSecurityGroups`

**API バージョン 2012-06-01**
+ `CreateLoadBalancer`
+ `ApplySecurityGroupsToLoadBalancer`

以下のポリシーの例では、ユーザーは、指定されたセキュリティグループの 1 つをロードバランサー用に選択する必要があります。

```
    "Version": "2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "elasticloadbalancing:CreateLoadBalancer",
            "elasticloadbalancing:SetSecurityGroup"
        ],
        "Resource": "*",
        "Condition": {
            "ForAnyValue:StringEqualsIgnoreCase":{ 
                "elasticloadbalancing:SecurityGroup": [
                    "sg-51530134",
                    "sg-51530144",
                    "sg-51530139"
                ]
            },
        }
    }
}
```

### elasticloadbalancing:Subnet 条件キー
<a name="subnet-condition"></a>

**重要**  
Elastic Load Balancing はすべて大文字のサブネット ID を受け入れます。ただし、`StringEqualsIgnoreCase` のように大文字と小文字を区別しない適切な条件演算子を使用してください。

`elasticloadbalancing:Subnet` 条件キーは、作成した後、ロードバランサーにアタッチできるサブネットを、定義する条件として使用できます。このポリシーは、Application Load Balancer、Network Load Balancer、Gateway Load Balancer、Classic Load Balancer で使用できます。以下のアクションでこの条件キーがサポートされています。

**API バージョン 2015-12-01**
+ `CreateLoadBalancer`
+ `SetSubnets`

**API バージョン 2012-06-01**
+ `CreateLoadBalancer`
+ `AttachLoadBalancerToSubnets`

以下のポリシーの例では、ユーザーは、指定されたサブネットの 1 つをロードバランサー用に選択する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "elasticloadbalancing:CreateLoadBalancer",
            "elasticloadbalancing:SetSubnets"
        ],
        "Resource": "*",
        "Condition": {
            "ForAnyValue:StringEqualsIgnoreCase": {
                "elasticloadbalancing:Subnet": [
                    "subnet-01234567890abcdef",
                    "subnet-01234567890abcdeg "
                ]
            }
        }
    }
}
```

------

### elasticloadbalancing:ResourceTag 条件キー
<a name="resourcetag-condition"></a>

`elasticloadbalancing:ResourceTag`/*キー* 条件キーは Elastic Load Balancing 固有です。すべての変異アクションは、この条件キーをサポートします。

## Elastic Load Balancing の ACL
<a name="security_iam_service-with-iam-acls"></a>

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

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

## Elastic Load Balancing での ABAC
<a name="security_iam_service-with-iam-tags"></a>

**ABAC (ポリシー内のタグ) のサポート:** あり

属性ベースのアクセス制御 (ABAC) は、タグと呼ばれる属性に基づいてアクセス許可を定義する認可戦略です。IAM エンティティと AWS リソースにタグをアタッチし、プリンシパルのタグがリソースのタグと一致するときにオペレーションを許可するように ABAC ポリシーを設計できます。

タグに基づいてアクセスを管理するには、`aws:ResourceTag/key-name`、`aws:RequestTag/key-name`、または `aws:TagKeys` の条件キーを使用して、ポリシーの[条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)でタグ情報を提供します。

サービスがすべてのリソースタイプに対して 3 つの条件キーすべてをサポートする場合、そのサービスの値は**あり**です。サービスが一部のリソースタイプに対してのみ 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)」を参照してください。

## Elastic Load Balancing での一時的な認証情報の使用
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

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

一時的な認証情報は、 AWS リソースへの短期的なアクセスを提供し、フェデレーションまたは切り替えロールを使用する場合に自動的に作成されます。長期的なアクセスキーを使用する代わりに、一時的な認証情報を動的に生成 AWS することをお勧めします。詳細については、「*IAM ユーザーガイド*」の「[IAM の一時的な認証情報](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)」および「[AWS のサービス と IAM との連携](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

## Elastic Load Balancing のクロスサービスプリンシパル許可
<a name="security_iam_service-with-iam-principal-permissions"></a>

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

 転送アクセスセッション (FAS) は、 を呼び出すプリンシパルのアクセス許可と AWS のサービス、ダウンストリームサービス AWS のサービス へのリクエストをリクエストする を使用します。FAS リクエストを行う際のポリシーの詳細については、「[転送アクセスセッション](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)」を参照してください。

## Elastic Load Balancing のサービスロール
<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)を参照してください。

## Elastic Load Balancing のサービスリンクロール
<a name="security_iam_service-with-iam-roles-service-linked"></a>

**サービスリンクロールのサポート:** あり

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

Elastic Load Balancing サービスにリンクされたロールの作成または管理の詳細については、「[Elastic Load Balancing のサービスにリンクされたロール](elb-service-linked-roles.md)」を参照してください。