View a markdown version of this page

Autorisation Envoy Proxy - AWS App Mesh

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Autorisation Envoy Proxy

Important

Avis de fin de support : le 30 septembre 2026, AWS le support pour AWS App Mesh. Après le 30 septembre 2026, vous ne pourrez plus accéder à la AWS App Mesh console ni aux AWS App Mesh ressources. Pour plus d'informations, consultez ce billet de blog Migration depuis Amazon ECS Service Connect AWS App Mesh vers Amazon ECS.

L'autorisation du proxy autorise le proxy Envoy exécuté dans le cadre d'une tâche Amazon ECS, dans un pod Kubernetes s'exécutant sur Amazon EKS ou s'exécutant sur une instance Amazon EC2 à lire la configuration d'un ou de plusieurs points de terminaison de maillage depuis le service de gestion App Mesh Envoy. Pour les comptes clients dont Envoys était déjà connecté à leur point de terminaison App Mesh avant 04/26 /2021, une autorisation proxy est requise pour les nœuds virtuels qui utilisent le protocole TLS (Transport Layer Security) et pour les passerelles virtuelles (avec ou sans TLS). Pour les comptes clients qui souhaitent connecter Envoys à leur point de terminaison App Mesh après 04/26 /2021, une autorisation proxy est requise pour toutes les fonctionnalités d'App Mesh. Il est recommandé à tous les comptes clients d'activer l'autorisation proxy pour tous les nœuds virtuels, même s'ils n'utilisent pas le protocole TLS, afin de bénéficier d'une expérience sécurisée et cohérente en utilisant IAM pour l'autorisation de ressources spécifiques. L'autorisation du proxy nécessite que l'appmesh:StreamAggregatedResourcesautorisation soit spécifiée dans une politique IAM. La politique doit être associée à un rôle IAM, et ce rôle IAM doit être attaché à la ressource de calcul sur laquelle vous hébergez le proxy.

Créer une politique IAM

Si vous souhaitez que toutes les extrémités de maillage d'un maillage de service puissent lire la configuration de toutes les extrémités de maillage, passez à. Créez un rôle IAM Si vous souhaitez limiter les points de terminaison de maillage à partir desquels la configuration peut être lue par des points de terminaison de maillage individuels, vous devez créer une ou plusieurs politiques IAM. Il est recommandé de limiter les points de terminaison du maillage à partir desquels la configuration peut être lue au seul proxy Envoy s'exécutant sur des ressources de calcul spécifiques. Créez une politique IAM et ajoutez l'appmesh:StreamAggregatedResourcesautorisation à la politique. L'exemple de politique suivant permet de configurer les nœuds virtuels nommés serviceBv1 et serviceBv2 à lire dans un maillage de services. La configuration ne peut être lue pour aucun autre nœud virtuel défini dans le maillage de services. Pour plus d'informations sur la création ou la modification d'une politique IAM, consultez Création de politiques IAM et Modification de politiques IAM.

JSON
{ "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" ] } ] }

Vous pouvez créer plusieurs politiques, chaque politique limitant l'accès à différents points de terminaison du maillage.

Créez un rôle IAM

Si vous souhaitez que tous les points de terminaison d'un maillage de service puissent lire la configuration de tous les points de terminaison de maillage, il vous suffit de créer un rôle IAM. Si vous souhaitez limiter les points de terminaison de maillage à partir desquels la configuration peut être lue par des points de terminaison de maillage individuels, vous devez créer un rôle pour chaque politique que vous avez créée à l'étape précédente. Complétez les instructions relatives à la ressource de calcul sur laquelle le proxy s'exécute.

  • Amazon EKS  : si vous souhaitez utiliser un rôle unique, vous pouvez utiliser le rôle existant qui a été créé et attribué aux nœuds de travail lorsque vous avez créé votre cluster. Pour utiliser plusieurs rôles, votre cluster doit répondre aux exigences définies dans Activation des rôles IAM pour les comptes de service de votre cluster. Créez les rôles IAM et associez-les aux comptes de service Kubernetes. Pour plus d'informations, consultez Création d'un rôle et d'une politique IAM pour votre compte de service et Spécification d'un rôle IAM pour votre compte de service.

  • Amazon ECS  : sélectionnez un AWS service, sélectionnez Elastic Container Service, puis sélectionnez le cas d'utilisation d'Elastic Container Service Task lors de la création de votre rôle IAM.

  • Amazon EC2  : sélectionnez le AWS service, sélectionnez EC2, puis sélectionnez le cas d'utilisation EC2 lors de la création de votre rôle IAM. Cela s'applique que vous hébergiez le proxy directement sur une instance Amazon EC2 ou sur Kubernetes s'exécutant sur une instance.

Pour plus d'informations sur la création d'un rôle IAM, consultez la section Création d'un rôle pour un AWS service.

Joindre une politique IAM

Si vous souhaitez que tous les points de terminaison de maillage d'un maillage de service puissent lire la configuration de tous les points de terminaison de maillage, associez la politique IAM AWSAppMeshEnvoyAccess gérée au rôle IAM que vous avez créé à l'étape précédente. Si vous souhaitez limiter les points de terminaison de maillage à partir desquels la configuration peut être lue par des points de terminaison de maillage individuels, associez chaque politique que vous avez créée à chaque rôle que vous avez créé. Pour plus d'informations sur l'attachement d'une politique IAM personnalisée ou gérée à un rôle IAM, consultez la section Ajout d'autorisations d'identité IAM.

Associer un rôle IAM

Associez chaque rôle IAM à la ressource de calcul appropriée :

  • Amazon EKS  : si vous avez associé la politique au rôle associé à vos nœuds de travail, vous pouvez ignorer cette étape. Si vous avez créé des rôles distincts, attribuez chaque rôle à un compte de service Kubernetes distinct et attribuez chaque compte de service à une spécification de déploiement de pod Kubernetes individuelle qui inclut le proxy Envoy. Pour plus d'informations, consultez la section Définition d'un rôle IAM pour votre compte de service dans le guide de l'utilisateur Amazon EKS et la section Configuration des comptes de service pour les pods dans la documentation Kubernetes.

  • Amazon ECS  : associez un rôle de tâche Amazon ECS à la définition de tâche qui inclut le proxy Envoy. La tâche peut être déployée avec le type de lancement EC2 ou Fargate. Pour plus d'informations sur la façon de créer un rôle de tâche Amazon ECS et de l'associer à une tâche, consultez Spécifier un rôle IAM pour vos tâches.

  • Amazon EC2  : le rôle IAM doit être associé à l'instance Amazon EC2 qui héberge le proxy Envoy. Pour plus d'informations sur la façon d'associer un rôle à une instance Amazon EC2, consultez J'ai créé un rôle IAM et je souhaite maintenant l'attribuer à une instance EC2.

Confirmer l'autorisation

Vérifiez que l'appmesh:StreamAggregatedResourcesautorisation est attribuée à la ressource de calcul sur laquelle vous hébergez le proxy en sélectionnant l'un des noms des services de calcul.

Amazon EKS

Une politique personnalisée peut être attribuée au rôle attribué aux nœuds de travail, aux pods individuels, ou aux deux. Il est toutefois recommandé d'attribuer la politique uniquement à des pods individuels, afin de pouvoir restreindre l'accès des pods individuels à des points de terminaison de maillage individuels. Si la politique est associée au rôle attribué aux nœuds de travail, sélectionnez l'onglet Amazon EC2 et suivez les étapes qui s'y trouvent pour vos instances de nœuds de travail. Pour déterminer quel rôle IAM est attribué à un pod Kubernetes, procédez comme suit.

  1. Consultez les détails d'un déploiement Kubernetes qui inclut le module auquel vous souhaitez confirmer qu'un compte de service Kubernetes est attribué. La commande suivante affiche les détails d'un déploiement nommémy-deployment.

    kubectl describe deployment my-deployment

    Dans la sortie renvoyée, notez la valeur à droite deService Account:. Si aucune ligne commençant par Service Account: n'existe, aucun compte de service Kubernetes personnalisé n'est actuellement attribué au déploiement. Vous devrez en attribuer un. Pour plus d'informations, consultez Configurer des comptes de service pour les pods dans la documentation Kubernetes.

  2. Consultez les détails du compte de service renvoyé à l'étape précédente. La commande suivante affiche les détails d'un compte de service nommémy-service-account.

    kubectl describe serviceaccount my-service-account

    À condition que le compte de service Kubernetes soit associé à un Gestion des identités et des accès AWS rôle, l'une des lignes renvoyées ressemblera à l'exemple suivant.

    Annotations:         eks.amazonaws.com/role-arn=arn:aws:iam::123456789012:role/my-deployment

    Dans l'exemple précédent my-deployment figure le nom du rôle IAM auquel le compte de service est associé. Si la sortie du compte de service ne contient pas de ligne similaire à l'exemple ci-dessus, cela signifie que le compte de service Kubernetes n'est associé à aucun Gestion des identités et des accès AWS compte et vous devez l'associer à un compte. Pour de plus amples informations, consultez Spécification d'un rôle IAM pour votre compte de service.

  3. Connectez-vous au Console de gestion AWS et ouvrez la console IAM à https://console.aws.amazon.com/iam/ l'adresse.

  4. Dans la barre de navigation de gauche, sélectionnez Rôles. Sélectionnez le nom du rôle IAM que vous avez noté à l'étape précédente.

  5. Vérifiez que la politique personnalisée que vous avez créée précédemment ou que la stratégie AWSAppMeshEnvoyAccess gérée est répertoriée. Si aucune politique n'est attachée, associez une stratégie IAM au rôle IAM. Si vous souhaitez joindre une stratégie IAM personnalisée mais que vous n'en avez pas, vous devez créer une stratégie IAM personnalisée avec les autorisations requises. Si une stratégie IAM personnalisée est jointe, sélectionnez-la et confirmez qu'elle contient"Action": "appmesh:StreamAggregatedResources". Si ce n'est pas le cas, vous devez ajouter cette autorisation à votre politique IAM personnalisée. Vous pouvez également vérifier que le nom de ressource Amazon (ARN) approprié pour un point de terminaison de maillage spécifique est répertorié. Si aucun ARN n'est répertorié, vous pouvez modifier la politique pour ajouter, supprimer ou modifier les ARN répertoriés. Pour plus d'informations, consultez Modifier les politiques IAM etCréer une politique IAM.

  6. Répétez les étapes précédentes pour chaque pod Kubernetes contenant le proxy Envoy.

Amazon ECS
  1. Dans la console Amazon ECS, choisissez Task Definitions.

  2. Sélectionnez votre tâche Amazon ECS.

  3. Sur la page Nom de la définition de tâche, sélectionnez votre définition de tâche.

  4. Sur la page Définition des tâches, sélectionnez le lien du nom du rôle IAM situé à droite de Task Role. Si aucun rôle IAM n'est répertorié, vous devez créer un rôle IAM et l'associer à votre tâche en mettant à jour votre définition de tâche.

  5. Sur la page Résumé, dans l'onglet Autorisations, vérifiez que la politique personnalisée que vous avez créée précédemment ou la stratégie AWSAppMeshEnvoyAccess gérée est répertoriée. Si aucune politique n'est attachée, associez une stratégie IAM au rôle IAM. Si vous souhaitez joindre une stratégie IAM personnalisée mais que vous n'en avez pas, vous devez créer la stratégie IAM personnalisée. Si une stratégie IAM personnalisée est jointe, sélectionnez-la et confirmez qu'elle contient"Action": "appmesh:StreamAggregatedResources". Si ce n'est pas le cas, vous devez ajouter cette autorisation à votre politique IAM personnalisée. Vous pouvez également vérifier que le nom de ressource Amazon (ARN) approprié pour un point de terminaison de maillage spécifique est répertorié. Si aucun ARN n'est répertorié, vous pouvez modifier la politique pour ajouter, supprimer ou modifier les ARN répertoriés. Pour plus d'informations, consultez Modifier les politiques IAM etCréer une politique IAM.

  6. Répétez les étapes précédentes pour chaque définition de tâche contenant le proxy Envoy.

Amazon EC2
  1. Depuis la console Amazon EC2, sélectionnez Instances dans la barre de navigation de gauche.

  2. Sélectionnez l'une de vos instances qui héberge le proxy Envoy.

  3. Dans l'onglet Description, sélectionnez le lien du nom du rôle IAM situé à droite du rôle IAM. Si aucun rôle IAM n'est répertorié, vous devez créer un rôle IAM.

  4. Sur la page Résumé, dans l'onglet Autorisations, vérifiez que la politique personnalisée que vous avez créée précédemment ou la stratégie AWSAppMeshEnvoyAccess gérée est répertoriée. Si aucune politique n'est attachée, associez la stratégie IAM au rôle IAM. Si vous souhaitez joindre une stratégie IAM personnalisée mais que vous n'en avez pas, vous devez créer la stratégie IAM personnalisée. Si une stratégie IAM personnalisée est jointe, sélectionnez-la et confirmez qu'elle contient"Action": "appmesh:StreamAggregatedResources". Si ce n'est pas le cas, vous devez ajouter cette autorisation à votre politique IAM personnalisée. Vous pouvez également vérifier que le nom de ressource Amazon (ARN) approprié pour un point de terminaison de maillage spécifique est répertorié. Si aucun ARN n'est répertorié, vous pouvez modifier la politique pour ajouter, supprimer ou modifier les ARN répertoriés. Pour plus d'informations, consultez Modifier les politiques IAM etCréer une politique IAM.

  5. Répétez les étapes précédentes pour chaque instance sur laquelle vous hébergez le proxy Envoy.