Passer au contenu

Comment puis-je restreindre l'accès à CloudWatch Logs pour un utilisateur ou un service AWS spécifique ?

Lecture de 3 minute(s)
0

Je souhaite restreindre l'accès à Amazon CloudWatch Logs pour un utilisateur ou un service AWS spécifique.

Brève description

Pour restreindre l'accès à vos groupes de journaux, utilisez les politiques de gestion des identités et des accès AWS (IAM) basées sur l'identité pour les utilisateurs et les rôles liés à un service pour les services AWS.

Remarque : pour configurer les autorisations IAM, utilisez la console de gestion AWS. Pour gérer les stratégies basées sur les ressources de CloudWatch Logs, utilisez des appels d'API.

Résolution

Appliquer la politique IAM pour octroyer les autorisations minimales requises

La politique IAM suivante fournit des autorisations d'accès détaillées pour un groupe de journaux spécifique qui permet aux utilisateurs de répertorier, de décrire, d'afficher et d'interroger les événements de journaux.

Utilisez la politique IAM suivante pour octroyer les autorisations minimales requises aux utilisateurs :

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Action": [
            "logs:Describe*",
            "logs:Get*",
            "logs:List*",
            "logs:StartQuery",
            "logs:StopQuery",
            "logs:TestMetricFilter",
            "logs:FilterLogEvents",
            "logs:StartLiveTail",
            "logs:StopLiveTail",
            "cloudwatch:GenerateQuery"
         ],
         "Effect": "Allow",
         "Resource": "arn:aws:logs:example-region:123456789012:log-group:example-log-group:*"
      },
      {
         "Effect": "Allow",
         "Action": "logs:DescribeLogGroups",
         "Resource": "*"
      }
   ]
}

Remarque : remplacez example-region par votre région AWS et example-log-group par le nom de votre groupe de journaux.

Si un utilisateur se connecte à CloudWatch via un point de terminaison de VPC, utilisez une politique IAM pour restreindre ses actions sur le point de terminaison de VPC.

Remarque : un message similaire à l'exemple suivant indique que l'utilisateur n'est pas autorisé à effectuer l'action spécifiée dans le message :

« (AccessDeniedException) when calling the PutLogEvents operation: User: arn:aws:sts::accountID:assumed-role/CWEC2Role/ec2-id is not authorized to perform: logs:PutLogEvents on resource: arn:aws:logs:us-east-1:accountID:log-group:test.log:log-stream:test because no VPC endpoint policy allows the action »

La politique IAM suivante permet aux utilisateurs d'effectuer des actions de lecture uniquement sur les groupes de journaux et les flux au niveau du point de terminaison :

{
   "Statement": [
      {
         "Action": [
            "logs:Describe*",
            "logs:Get*",
            "logs:List*"
         ],
         "Effect": "Allow",
         "Principal": "*",
         "Resource": "*"
      }
   ]
}

Pour plus d'informations sur l'utilisation des points de terminaison VPC pour CloudWatch, consultez la section Utilisation de CloudWatch Logs avec des points de terminaison VPC d'interface..

Remarque : Pour contrôler davantage d'autorisations, utilisez les actions, ressources et clés de condition de vos politiques IAM.

Configurer l'accès à CloudWatch Logs pour les services AWS

Pour octroyer aux services AWS les autorisations requises pour interagir avec CloudWatch Logs, utilisez des rôles liés à un service. CloudWatch crée automatiquement des rôles liés aux services lorsque vous configurez un service avec CloudWatch Logs avec les autorisations nécessaires.

AWS OFFICIELA mis à jour il y a 5 mois