AWS X-Ray exemples de politiques basées sur l'identité - AWS X-Ray

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.

AWS X-Ray exemples de politiques basées sur l'identité

Par défaut, les utilisateurs et les rôles ne sont pas autorisés à créer ou à modifier les ressources X-Ray. Ils ne peuvent pas non plus effectuer de tâches à l'aide de l' AWS API AWS Management Console AWS CLI, ou. Un administrateur doit créer des politiques IAM autorisant les utilisateurs et les rôles à exécuter des opérations d’API spécifiques sur les ressources spécifiées dont ils ont besoin. Il doit ensuite attacher ces stratégies aux utilisateurs ou aux groupes ayant besoin de ces autorisations.

Pour savoir comment créer une politique IAM basée sur l’identité à l’aide de ces exemples de documents de politique JSON, consultez Création de politiques dans l’onglet JSON dans le Guide de l’utilisateur IAM.

Bonnes pratiques en matière de politiques

Les politiques basées sur l'identité déterminent si quelqu'un peut créer, accéder ou supprimer des ressources X-Ray dans votre compte. Ces actions peuvent entraîner des frais pour votre Compte AWS. Lorsque vous créez ou modifiez des politiques basées sur l’identité, suivez ces instructions et recommandations :

  • Commencez AWS par les politiques gérées et passez aux autorisations du moindre privilège : pour commencer à accorder des autorisations à vos utilisateurs et à vos charges de travail, utilisez les politiques AWS gérées qui accordent des autorisations pour de nombreux cas d'utilisation courants. Ils sont disponibles dans votre Compte AWS. Nous vous recommandons de réduire davantage les autorisations en définissant des politiques gérées par les AWS clients spécifiques à vos cas d'utilisation. Pour plus d’informations, consultez politiques gérées par AWS ou politiques gérées par AWS pour les activités professionnelles dans le Guide de l’utilisateur IAM.

  • Accordez les autorisations de moindre privilège : lorsque vous définissez des autorisations avec des politiques IAM, accordez uniquement les autorisations nécessaires à l’exécution d’une seule tâche. Pour ce faire, vous définissez les actions qui peuvent être entreprises sur des ressources spécifiques dans des conditions spécifiques, également appelées autorisations de moindre privilège. Pour plus d’informations sur l’utilisation d’IAM pour appliquer des autorisations, consultez politiques et autorisations dans IAM dans le Guide de l’utilisateur IAM.

  • Utilisez des conditions dans les politiques IAM pour restreindre davantage l’accès : vous pouvez ajouter une condition à vos politiques afin de limiter l’accès aux actions et aux ressources. Par exemple, vous pouvez écrire une condition de politique pour spécifier que toutes les demandes doivent être envoyées via SSL. Vous pouvez également utiliser des conditions pour accorder l'accès aux actions de service si elles sont utilisées par le biais d'un service spécifique Service AWS, tel que AWS CloudFormation. Pour plus d’informations, consultez Conditions pour éléments de politique JSON IAM dans le Guide de l’utilisateur IAM.

  • Utilisez l’Analyseur d’accès IAM pour valider vos politiques IAM afin de garantir des autorisations sécurisées et fonctionnelles : l’Analyseur d’accès IAM valide les politiques nouvelles et existantes de manière à ce que les politiques IAM respectent le langage de politique IAM (JSON) et les bonnes pratiques IAM. IAM Access Analyzer fournit plus de 100 vérifications de politiques et des recommandations exploitables pour vous aider à créer des politiques sécurisées et fonctionnelles. Pour plus d’informations, consultez Validation de politiques avec IAM Access Analyzer dans le Guide de l’utilisateur IAM.

  • Exiger l'authentification multifactorielle (MFA) : si vous avez un scénario qui nécessite des utilisateurs IAM ou un utilisateur root, activez l'authentification MFA pour une sécurité accrue. Compte AWS Pour exiger la MFA lorsque des opérations d’API sont appelées, ajoutez des conditions MFA à vos politiques. Pour plus d’informations, consultez Sécurisation de l’accès aux API avec MFA dans le Guide de l’utilisateur IAM.

Pour plus d’informations sur les bonnes pratiques dans IAM, consultez Bonnes pratiques de sécurité dans IAM dans le Guide de l’utilisateur IAM.

Utilisation de la console X-Ray

Pour accéder à la AWS X-Ray console, vous devez disposer d'un ensemble minimal d'autorisations. Ces autorisations doivent vous permettre de répertorier et de consulter les détails des ressources X-Ray de votre Compte AWS. Si vous créez une politique basée sur l’identité qui est plus restrictive que l’ensemble minimum d’autorisations requis, la console ne fonctionnera pas comme prévu pour les entités (utilisateurs ou rôles) tributaires de cette politique.

Pour vous assurer que ces entités peuvent toujours utiliser la console X-Ray, associez la politique AWSXRayReadOnlyAccess AWS gérée aux entités. Cette politique est décrite plus en détail dans Politiques gérées par IAM pour X-Ray. Pour plus d'informations, consultez Ajout d'autorisations à un utilisateur dans le Guide de l’utilisateur IAM.

Il n'est pas nécessaire d'accorder des autorisations de console minimales aux utilisateurs qui appellent uniquement l'API AWS CLI ou l' AWS API. Autorisez plutôt l'accès à uniquement aux actions qui correspondent à l'opération d'API que vous tentez d'effectuer.

Autorisation accordée aux utilisateurs pour afficher leurs propres autorisations

Cet exemple montre comment créer une politique qui permet aux utilisateurs IAM d’afficher les politiques en ligne et gérées attachées à leur identité d’utilisateur. Cette politique inclut les autorisations permettant d'effectuer cette action sur la console ou par programmation à l'aide de l'API AWS CLI or AWS .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Gestion de l'accès aux groupes X-Ray et des règles d'échantillonnage en fonction des balises

Vous pouvez utiliser les conditions de votre politique basée sur l'identité pour contrôler l'accès aux groupes X-Ray et les règles d'échantillonnage en fonction des balises. L'exemple de politique suivant peut être utilisé pour refuser à un rôle d'utilisateur l'autorisation de créer, de supprimer ou de mettre à jour des groupes avec les balises stage:prod oustage:preprod. Pour plus d'informations sur le balisage des règles et des groupes d'échantillonnage X-Ray, consultezÉtiquetage des règles et des groupes d'échantillonnage aux rayons X.

Pour refuser à un utilisateur l'accès à la création, à la mise à jour ou à la suppression d'un groupe doté d'une étiquette stage:prod ou stage:preprod pour attribuer à l'utilisateur un rôle avec une politique similaire à la suivante.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllXRay", "Effect": "Allow", "Action": "xray:*", "Resource": "*" }, { "Sid": "DenyCreateGroupWithStage", "Effect": "Deny", "Action": [ "xray:CreateGroup" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/stage": [ "preprod", "prod" ] } } }, { "Sid": "DenyUpdateGroupWithStage", "Effect": "Deny", "Action": [ "xray:UpdateGroup", "xray:DeleteGroup" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/stage": [ "preprod", "prod" ] } } } ] }

Pour refuser la création d'une règle d'échantillonnage, utilisez cette option aws:RequestTag pour indiquer les balises qui ne peuvent pas être transmises dans le cadre d'une demande de création. Pour refuser la mise à jour ou la suppression d'une règle d'échantillonnage, utilisez cette aws:ResourceTag option pour refuser les actions en fonction des balises associées à ces ressources.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllXRay", "Effect": "Allow", "Action": "xray:*", "Resource": "*" }, { "Sid": "DenyCreateSamplingRuleWithStage", "Effect": "Deny", "Action": "xray:CreateSamplingRule", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/stage": [ "preprod", "prod" ] } } }, { "Sid": "DenyUpdateSamplingRuleWithStage", "Effect": "Deny", "Action": [ "xray:UpdateSamplingRule", "xray:DeleteSamplingRule" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/stage": [ "preprod", "prod" ] } } } ] }

Vous pouvez associer ces politiques (ou les combiner en une seule politique, puis associer la politique) aux utilisateurs de votre compte. Pour que l'utilisateur puisse modifier un groupe ou une règle d'échantillonnage, le groupe ou la règle d'échantillonnage ne doit pas être balisé stage=prepod oustage=prod. La clé de condition d'étiquette Stage correspond à la fois à Stage et à stage, car les noms de clé de condition ne sont pas sensibles à la casse. Pour plus d'informations sur le bloc de conditions, voir IAM JSON Policy Elements : Condition dans le guide de l'utilisateur IAM.

Un utilisateur dont le rôle est associé à la politique suivante ne peut pas ajouter la balise role:admin aux ressources et ne peut pas supprimer de balises d'une ressource qui lui est role:admin associée.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllXRay", "Effect": "Allow", "Action": "xray:*", "Resource": "*" }, { "Sid": "DenyRequestTagAdmin", "Effect": "Deny", "Action": "xray:TagResource", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/role": "admin" } } }, { "Sid": "DenyResourceTagAdmin", "Effect": "Deny", "Action": "xray:UntagResource", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/role": "admin" } } } ] }

Politiques gérées par IAM pour X-Ray

Pour faciliter l'octroi des autorisations, IAM prend en charge les politiques gérées pour chaque service. Un service peut mettre à jour ces politiques gérées avec de nouvelles autorisations lorsqu'il en publie de nouvelles APIs. AWS X-Ray fournit des politiques gérées pour les cas d'utilisation en lecture seule, en écriture seule et par les administrateurs.

  • AWSXrayReadOnlyAccess— Autorisations de lecture pour utiliser la console X-Ray, ou le AWS SDK AWS CLI, afin d'obtenir des données de suivi, des cartes de traçage, des informations et la configuration de X-Ray à partir de l'API X-Ray. Inclut le gestionnaire d'accès à l'observabilité (OAM) oam:ListSinks et oam:ListAttachedSinks des autorisations permettant à la console de consulter les traces partagées depuis les comptes sources dans le cadre de l'observabilité CloudWatch entre comptes. Les actions BatchGetTraceSummaryById et GetDistinctTraceGraphs API ne sont pas destinées à être appelées par votre code et ne sont pas incluses dans le AWS CLI et AWS SDKs.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:GetSamplingRules", "xray:GetSamplingTargets", "xray:GetSamplingStatisticSummaries", "xray:BatchGetTraces", "xray:BatchGetTraceSummaryById", "xray:GetDistinctTraceGraphs", "xray:GetServiceGraph", "xray:GetTraceGraph", "xray:GetTraceSummaries", "xray:GetGroups", "xray:GetGroup", "xray:ListTagsForResource", "xray:ListResourcePolicies", "xray:GetTimeSeriesServiceStatistics", "xray:GetInsightSummaries", "xray:GetInsight", "xray:GetInsightEvents", "xray:GetInsightImpactGraph", "oam:ListSinks" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "oam:ListAttachedLinks" ], "Resource": "arn:aws:oam:*:*:sink/*" } }
  • AWSXRayDaemonWriteAccess— Écrivez des autorisations pour utiliser le daemon X-Ray, ou AWS SDK AWS CLI, pour télécharger des documents segmentés et des données de télémétrie vers l'API X-Ray. Inclut les autorisations de lecture pour obtenir les règles d'échantillonnage et rapporter les résultats d'échantillonnage.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:PutTraceSegments", "xray:PutTelemetryRecords", "xray:GetSamplingRules", "xray:GetSamplingTargets", "xray:GetSamplingStatisticSummaries" ], "Resource": [ "*" ] } ] }
  • AWSXrayCrossAccountSharingConfiguration— Accorde les autorisations nécessaires pour créer, gérer et consulter les liens d'Observability Access Manager pour partager les ressources X-Ray entre les comptes. Utilisé pour permettre l'observabilité entre CloudWatch comptes source et comptes de surveillance.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:Link", "oam:ListLinks" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "oam:DeleteLink", "oam:GetLink", "oam:TagResource" ], "Resource": "arn:aws:oam:*:*:link/*" }, { "Effect": "Allow", "Action": [ "oam:CreateLink", "oam:UpdateLink" ], "Resource": [ "arn:aws:oam:*:*:link/*", "arn:aws:oam:*:*:sink/*" ] } ] }
  • AWSXrayFullAccess— Autorisation d'utiliser tous les X-Ray APIs, y compris les autorisations de lecture, les autorisations d'écriture et l'autorisation de configurer les paramètres des clés de chiffrement et les règles d'échantillonnage. Inclut le gestionnaire d'accès à l'observabilité (OAM) oam:ListSinks et oam:ListAttachedSinks des autorisations permettant à la console de consulter les traces partagées depuis les comptes sources dans le cadre de l'observabilité CloudWatch entre comptes.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:*", "oam:ListSinks" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "oam:ListAttachedLinks" ], "Resource": "arn:aws:oam:*:*:sink/*" } ] }
Pour ajouter une stratégie gérée à un utilisateur, groupe ou rôle IAM
  1. Ouvrez la console IAM.

  2. Ouvrez le rôle associé à votre profil d'instance, un utilisateur IAM ou un groupe IAM.

  3. Sous Autorisations, attachez la stratégie gérée.

X-Ray met à jour les politiques AWS gérées

Consultez les détails des mises à jour apportées aux politiques AWS gérées pour X-Ray depuis que ce service a commencé à suivre ces modifications. Pour recevoir des alertes automatiques concernant les modifications apportées à cette page, abonnez-vous au flux RSS sur la page d'historique du document X-Ray.

Modification Description Date

Politiques gérées par IAM pour X-Ray — Ajout de AWSXrayFullAccess politiques nouvelles AWSXrayCrossAccountSharingConfiguration AWSXrayReadOnlyAccess et mises à jour.

X-Ray a ajouté des autorisations oam:ListSinks Observability Access Manager (OAM) oam:ListAttachedSinks à ces politiques pour permettre à la console de visualiser les traces partagées depuis les comptes sources dans le cadre de l'observabilité CloudWatch entre comptes.

27 novembre 2022

Politiques gérées par IAM pour X-Ray — Mise à jour de la AWSXrayReadOnlyAccess politique

X-Ray a ajouté une action d'API,ListResourcePolicies.

15 novembre 2022

Utilisation de la console X-Ray — Mise à jour de la AWSXrayReadOnlyAccess politique

X-Ray a ajouté deux nouvelles actions d'API, BatchGetTraceSummaryById etGetDistinctTraceGraphs.

Ces actions ne sont pas destinées à être appelées par votre code. Par conséquent, ces actions d'API ne sont pas incluses dans le AWS CLI et AWS SDKs.

11 novembre 2022

Spécification d'une ressource au sein d'une politique IAM

Vous pouvez contrôler l'accès aux ressources à l'aide d'une politique IAM. Pour les actions qui prennent en charge les autorisations au niveau des ressources, vous utilisez un Amazon Resource Name (ARN) pour identifier la ressource à laquelle la stratégie s'applique.

Toutes les actions X-Ray peuvent être utilisées dans une politique IAM pour accorder ou refuser aux utilisateurs l'autorisation d'utiliser cette action. Cependant, les actions X-Ray ne prennent pas toutes en charge les autorisations au niveau des ressources, qui vous permettent de spécifier les ressources sur lesquelles une action peut être effectuée.

Pour les actions qui ne prennent pas en charge les autorisations de niveau ressource, vous devez utiliser « * » comme ressource.

Les actions X-Ray suivantes prennent en charge les autorisations au niveau des ressources :

  • CreateGroup

  • GetGroup

  • UpdateGroup

  • DeleteGroup

  • CreateSamplingRule

  • UpdateSamplingRule

  • DeleteSamplingRule

Vous trouverez ci-dessous un exemple de stratégie d’autorisations basées sur l’identité pour une action CreateGroup. Cet exemple montre comment se servir d’un ARN lié à un nom de groupe local-users, en utilisant l’ID unique en tant que caractère générique. L'ID unique est généré lorsque le groupe est créé. Il ne peut donc pas être prédit à l'avance dans la stratégie. Lorsque vous utilisez GetGroup, UpdateGroup ou DeleteGroup, vous pouvez définir l’ID unique en tant que caractère générique ou ARN exact, comprenant l’ID.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:CreateGroup" ], "Resource": [ "arn:aws:xray:eu-west-1:123456789012:group/local-users/*" ] } ] }

Vous trouverez ci-dessous un exemple de stratégie d’autorisations basées sur l’identité pour une action CreateSamplingRule.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:CreateSamplingRule" ], "Resource": [ "arn:aws:xray:eu-west-1:123456789012:sampling-rule/base-scorekeep" ] } ] }
Note

L'ARN d'une règle d'échantillonnage est défini par le nom de cette dernière. Contrairement aux règles de groupe ARNs, les règles d'échantillonnage n'ont pas d'identifiant généré de manière unique.