

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

# AWS Transit Gateway での Identity and Access Management
<a name="transit-gateway-authentication-access-control"></a>

AWS はセキュリティ認証情報を使用してユーザーを識別し、 AWS リソースへのアクセスを許可します。 AWS Identity and Access Management (IAM) の機能を使用すると、セキュリティ認証情報を共有することなく、他のユーザー、サービス、アプリケーションが AWS リソースを完全にまたは制限付きで使用できるようになります。

デフォルトでは、IAM ユーザーには AWS リソースを作成、表示、または変更するアクセス許可はありません。ユーザーが Transit Gateway などのリソースにアクセスして、タスクを実行できるようにするには、特定のリソースや必要となる API アクションを使用するための許可をユーザーに付与する IAM ポリシーを作成してから、そのポリシーをそのユーザーが属するグループにアタッチする必要があります。ポリシーをユーザーまたはユーザーのグループにアタッチする場合、ポリシーによって特定リソースの特定タスクを実行するユーザーの権限が許可または拒否されます。

トランジットゲートウェイを使用するには、次のいずれかの AWS マネージドポリシーがニーズを満たす場合があります。
+ [AmazonEC2FullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEC2FullAccess.html)
+ [AmazonEC2ReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEC2ReadOnlyAccess.html)
+ [PowerUserAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/PowerUserAccess.html)
+ [ReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/ReadOnlyAccess.html)

## Transit Gateway を管理するためのポリシー例
<a name="tgw-example-iam-policies"></a>

以下は Transit Gateway を使用するための IAM ポリシーの例です。

**必要なタグを持つ Transit Gateway を作成する**  
以下の例で、ユーザーは Transit Gateway を作成できるようになります。`aws:RequestTag` 条件キーでは、ユーザーは Transit Gateway をタグ `stack=prod` にタグ付けすることが求められます。`aws:TagKeys` 条件キーは、`ForAllValues` 修飾子を使用し、キー `stack` のみがリクエストで許可されることを指定します（他のタグは指定できません）。ユーザーが Transit Gateway の作成時にこの指定のタグを渡さない場合、またはタグを指定しない場合、リクエストは却下されます。

2 番目のステートメントは、`ec2:CreateAction` 条件キーを使用して、ユーザーが `CreateTransitGateway` のコンテキストでみタグを使用できるようにします。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCreateTaggedTGWs",
            "Effect": "Allow",
            "Action": "ec2:CreateTransitGateway",
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:transit-gateway/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/stack": "prod"
                },
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "stack"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTags"
            ],
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:transit-gateway/*",
            "Condition": {
                "StringEquals": {
                    "ec2:CreateAction": "CreateTransitGateway"
                }
            }
        }
    ]
}
```

------

**Transit Gateway ルートテーブルの操作**  
以下の例では、ユーザーが特定の Transit Gateway のみ（`tgw-11223344556677889`）に対して Transit Gateway ルートテーブルを作成および削除できるようにします。ユーザーは、任意の Transit Gateway のルートテーブルでルートの作成や置き換えができますが、タグ `network=new-york-office` の付いたアタッチメントに対してのみ可能です。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DeleteTransitGatewayRouteTable",
                "ec2:CreateTransitGatewayRouteTable"
            ],
            "Resource": [
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:transit-gateway/tgw-{{11223344556677889}}",
                "arn:aws:ec2:*:*:transit-gateway-route-table/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTransitGatewayRoute",
                "ec2:ReplaceTransitGatewayRoute"
            ],
            "Resource": "arn:aws:ec2:*:*:transit-gateway-attachment/*",
            "Condition": {
                "StringEquals": {
                    "ec2:ResourceTag/network": "new-york-office"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTransitGatewayRoute",
                "ec2:ReplaceTransitGatewayRoute"
            ],
            "Resource": "arn:aws:ec2:*:*:transit-gateway-route-table/*"
        }
    ]
}
```

------