翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Envoy プロキシの認可
重要
サポート終了通知: 2026 年 9 月 30 日、 は のサポートを中止 AWS します AWS App Mesh。2026 年 9 月 30 日以降、 AWS App Mesh コンソールまたは AWS App Mesh リソースにアクセスできなくなります。詳細については、このブログ記事の「 から Amazon ECS Service Connect AWS App Mesh への移行
プロキシ認証は、Amazon ECSタスク内で実行されている Envoy プロキシ、Amazon で実行されている Kubernetes ポッドEKS、または Amazon EC2インスタンスで実行されている Envoy プロキシに、App Mesh Envoy Management Service から 1 つ以上のメッシュエンドポイントの設定を読み取る権限を付与します。04/26/2021 より前に App Mesh エンドポイントに Envoys がすでに接続されているカスタマーアカウントの場合、Transport Layer Security (TLS) を使用する仮想ノードと仮想ゲートウェイ ( の有無にかかわらず) にはプロキシ認証が必要ですTLS。2021 年 4 月 26 日以降に Envoy を App Mesh エンドポイントに接続する顧客アカウントの場合、すべての App Mesh 機能にプロキシ認可が必要です。すべてのカスタマーアカウントでは、 を使用していない場合でも、すべての仮想ノードのプロキシ認証を有効にしてTLS、特定のリソースへの認証IAMに を使用する安全で一貫したエクスペリエンスを得ることをお勧めします。プロキシ認証では、IAMポリシーでappmesh:StreamAggregatedResources
アクセス許可を指定する必要があります。ポリシーはIAMロールにアタッチされ、そのIAMロールはプロキシをホストするコンピューティングリソースにアタッチされる必要があります。
IAM ポリシーの作成
サービスメッシュ内のすべてのメッシュエンドポイントで、すべてのメッシュエンドポイントの設定を読み取れるようにするには、IAM ロールの作成 に進みます。個々のメッシュエンドポイントによって設定を読み取ることができるメッシュエンドポイントを制限する場合は、1 つ以上のIAMポリシーを作成する必要があります。設定を読み取りできるメッシュエンドポイントを、特定のコンピューティングリソースで実行されている Envoy プロキシのみに制限することをお勧めします。IAM ポリシーを作成し、ポリシーに appmesh:StreamAggregatedResources
アクセス許可を追加します。次のポリシーの例では、serviceBv1
と serviceBv2
という名前の仮想ノードの設定をサービスメッシュで読み取りすることを許可します。サービスメッシュで定義されている他の仮想ノードの設定を読み取りすることはできません。IAM ポリシーの作成または編集の詳細については、IAM「ポリシーの作成」およびIAM「ポリシーの編集」を参照してください。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "appmesh:StreamAggregatedResources", "Resource": [ "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/serviceBv1", "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/serviceBv2" ] } ] }
複数のポリシーを作成し、各ポリシーで異なるメッシュエンドポイントへのアクセスを制限できます。
IAM ロールの作成
サービスメッシュ内のすべてのメッシュエンドポイントがすべてのメッシュエンドポイントの設定を読み取れるようにするには、1 つのIAMロールを作成するだけで済みます。個々のメッシュエンドポイントで設定を読み取りできるメッシュエンドポイントを制限する場合は、前の手順で作成したポリシーごとにロールを作成する必要があります。プロキシが実行されるコンピュートリソースの指示を完了します。
-
Amazon EKS – 単一ロールを使用する場合は、クラスターの作成時にワーカーノードに作成および割り当てられた既存のロールを使用できます。複数のロールを使用するには、クラスター でサービスアカウントのIAMロールを有効にする で定義されている要件を満たしている必要があります。IAM ロールを作成し、ロールを Kubernetes サービスアカウントに関連付ける。詳細については、「サービスアカウントのIAMロールとポリシーの作成」と「サービスアカウントのIAMロールの指定」を参照してください。
-
Amazon ECS – AWS サービスを選択し、Elastic Container Service を選択し、IAMロールの作成時に Elastic Container Service タスクのユースケースを選択します。
-
Amazon EC2 – AWS サービスを選択し、 を選択しEC2、IAMロールの作成時にEC2ユースケースを選択します。これは、プロキシを Amazon EC2インスタンスで直接ホストするか、インスタンスで実行されている Kubernetes でホストするかにかかわらず適用されます。
IAM ロールを作成する方法の詳細については、AWS 「サービス のロールの作成」を参照してください。
アタッチIAMポリシー
サービスメッシュ内のすべてのメッシュエンドポイントがすべてのメッシュエンドポイントの設定を読み取れるようにするには、前のステップで作成したIAMロールに AWSAppMeshEnvoyAccess
マネージドIAMポリシーをアタッチします。個々のメッシュエンドポイントで設定を読み込みできるメッシュエンドポイントを制限する場合は、作成した各ポリシーを、作成した各ロールにアタッチします。カスタムポリシーまたはマネージドIAMポリシーをIAMロールにアタッチする方法の詳細については、IAM「ID アクセス許可の追加」を参照してください。
IAM ロールをアタッチする
各IAMロールを適切なコンピューティングリソースにアタッチします。
-
Amazon EKS – ワーカーノードにアタッチされたロールにポリシーをアタッチした場合は、このステップをスキップできます。個別のロールを作成した場合は、各ロールを個別の Kubernetes サービスアカウントに割り当てて、各サービスアカウントを Envoy プロキシを含む個々の Kubernetes ポッドデプロイ仕様に割り当てます。詳細については、「Amazon EKSユーザーガイド」の「サービスアカウントのIAMロールの指定」および「Kubernetes ドキュメント」の「ポッドのサービスアカウントの設定
」を参照してください。 -
Amazon ECS – Envoy プロキシを含むタスク定義に Amazon ECSタスクロールをアタッチします。タスクは、 EC2または Fargate 起動タイプでデプロイできます。Amazon ECSタスクロールを作成してタスクにアタッチする方法については、「タスクのIAMロールの指定」を参照してください。
-
Amazon EC2 – IAMロールは、Envoy プロキシをホストする Amazon EC2インスタンスにアタッチする必要があります。Amazon EC2インスタンスにロールをアタッチする方法の詳細については、IAM「ロールを作成しました」を参照してください。次に、EC2インスタンス にロールを割り当てます
。
アクセス許可の確認
コンピュートサービス名の1つを選択して、プロキシをホストするコンピュートリソースに appmesh:StreamAggregatedResources
アクセス許可が割り当てられていることを確認します。