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.
AWSSupport-TroubleshootS3EventNotifications
Description
Le manuel AWSSupport-TroubleshootS3EventNotifications
AWS Systems Manager d'automatisation permet de résoudre les problèmes liés aux notifications d'événements de compartiment Amazon Simple Storage Service (Amazon S3) configurées avec des fonctions AWS Lambda
, des rubriques Amazon Simple Notification Service (Amazon SNS) ou des files d'attente Amazon Simple Queue Service (Amazon SQS). Il fournit un rapport sur les paramètres de configuration des différentes ressources configurées avec le compartiment Amazon S3 en tant que notification d'événement de destination.
Comment fonctionne-t-il ?
Le runbook exécute les étapes suivantes :
-
Vérifie si le compartiment Amazon S3 existe dans le même compte que celui où
AWSSupport-TroubleshootS3EventNotifications
il est exécuté. -
Récupère les ressources de destination (AWS Lambda Function, rubrique Amazon SNS ou file d'attente Amazon SQS) configurées en tant que notifications d'événements pour le compartiment Amazon S3 à l'aide de l'API. GetBucketNotificationConfiguration
-
Valide l'existence de la ressource de destination, puis passe en revue la politique basée sur les ressources des ressources de destination afin de déterminer si Amazon S3 est autorisé à publier sur la destination.
-
Si vous avez chiffré la destination avec une clé AWS Key Management Service (AWS KMS), la politique des clés est vérifiée pour déterminer si l'accès à Amazon S3 est autorisé.
-
Génère un rapport de toutes les vérifications des ressources de destination.
Important
-
Ce runbook ne peut évaluer les configurations de notification d'événements que si le propriétaire du compartiment Amazon S3 est le même que celui où le runbook d'automatisation est exécuté. Compte AWS
-
En outre, ce runbook ne peut pas évaluer les politiques relatives aux ressources de destination hébergées dans un autre Compte AWS.
Exécuter cette automatisation (console)
Type de document
Automatisation
Propriétaire
Amazon
Plateformes
Linux, macOS, Windows
Paramètres
-
AutomationAssumeRole
Type : String
Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle AWS Identity and Access Management (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
-
S3 BucketName
Type :
AWS::S3::Bucket::Name
Description : (Obligatoire) Le nom du compartiment Amazon S3 configuré avec des notifications d'événements.
Autorisations IAM requises
Le AutomationAssumeRole
paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
-
s3:GetBucketLocation
-
s3:ListAllMyBuckets
-
s3:GetBucketNotification
-
sqs:GetQueueAttributes
-
sqs:GetQueueUrl
-
sns:GetTopicAttributes
-
kms:GetKeyPolicy
-
kms:DescribeKey
-
kms:ListAliases
-
lambda:GetPolicy
-
lambda:GetFunction
-
iam:GetContextKeysForCustomPolicy
-
iam:SimulateCustomPolicy
-
iam:ListRoles
-
ssm:DescribeAutomationStepExecutions
Exemple de politique IAM pour le rôle Automation Assume
{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3Permission", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListAllMyBuckets" ], "Resource": "*" }, { "Sid": "S3PermissionGetBucketNotification", "Effect": "Allow", "Action": [ "s3:GetBucketNotification" ], "Resource": "arn:aws:s3::::<bucket-name>" }, { "Sid": "SQSPermission", "Effect": "Allow", "Action": [ "sqs:GetQueueAttributes", "sqs:GetQueueUrl" ], "Resource": "arn:aws:sqs:<region>:123456789012:*" }, { "Sid": "SNSPermission", "Effect": "Allow", "Action": [ "sns:GetTopicAttributes" ], "Resource": "arn:aws:sns:<region>:123456789012:*" }, { "Sid": "KMSPermission", "Effect": "Allow", "Action": [ "kms:GetKeyPolicy", "kms:DescribeKey", "kms:ListAliases" ], "Resource": "arn:aws:kms:<region>:123456789012:key/<key-id>" }, { "Sid": "LambdaPermission", "Effect": "Allow", "Action": [ "lambda:GetPolicy", "lambda:GetFunction" ], "Resource": "arn:aws:lambda:<region>:123456789012:function:*" }, { "Sid": "IAMPermission", "Effect": "Allow", "Action": [ "iam:GetContextKeysForCustomPolicy", "iam:SimulateCustomPolicy", "iam:ListRoles" ], "Resource": "*" }, { "Sid": "SSMPermission", "Effect": "Allow", "Action": [ "ssm:DescribeAutomationStepExecutions" ], "Resource": "*" } ] }
Instructions
Pour configurer l'automatisation, procédez comme suit :
-
Accédez
AWSSupport-TroubleshootS3EventNotifications
à Systems Manager sous Documents. -
Sélectionnez Execute automation (Exécuter l'automatisation).
-
Pour les paramètres d'entrée, entrez ce qui suit :
-
AutomationAssumeRole (Facultatif) :
Amazon Resource Name (ARN) du rôle AWS AWS Identity and Access Management (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
-
S3 BucketName (obligatoire) :
Le nom du compartiment Amazon S3 configuré avec les notifications d'événements.
-
-
Sélectionnez Exécuter.
-
L'automatisation démarre.
-
Le document exécute les étapes suivantes :
-
ValidateInputs
Valide que le compartiment Amazon S3 fourni appartient au même compte sur lequel l'automatisation est exécutée et récupère la région dans laquelle le compartiment est hébergé.
-
GetBucketNotificationConfiguration
Appelle
GetBucketNotificationConfiguration
l'API pour examiner les notifications d'événements configurées avec le compartiment Amazon S3 et formater la sortie. -
BranchOnSQSResourceStratégie
Des branches sur la présence de ressources Amazon SQS dans les notifications d'événements.
-
Valider SQSResource la politique
Valide la politique de ressources sur les attributs de la file d'attente Amazon SQS et
sqs:SendMessage
dispose d'une autorisation pour Amazon S3. Si la ressource Amazon SQS est chiffrée, vérifie que le chiffrement n'utilise pas la AWS KMS clé par défaut, c'est-à-dire que la politique enaws/sqs
matière de AWS KMS clés prévoit des autorisations pour Amazon S3. -
BranchOnSNSResourceStratégie
Des branches sur la présence de ressources Amazon SNS dans les notifications d'événements.
-
Valider SNSResource la politique
Valide la politique de ressources sur Amazon SNS. Les attributs de la rubrique sont
sns:Publish
autorisés pour Amazon S3. Si la ressource Amazon SNS est chiffrée, vérifie que le chiffrement n'utilise pas la AWS KMS clé par défaut, c'est-à-dire que la politique enaws/sns
matière de AWS KMS clés prévoit des autorisations pour Amazon S3. -
BranchOnLambdaFunctionResourcePolicy
Indique s'il existe des AWS Lambda fonctions dans les notifications d'événements.
-
ValidateLambdaFunctionResourcePolicy
Valide la politique de ressources si la AWS Lambda fonction est
lambda:InvokeFunction
autorisée à accéder à Amazon S3. -
GenerateReport
Renvoie les détails des étapes, des résultats du runbook et des recommandations pour résoudre tout problème lié aux notifications d'événements configurées avec le compartiment Amazon S3.
-
-
Une fois terminé, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :
-
Notifications d'événements Amazon SQS
Si des notifications de destination Amazon SQS sont configurées avec le compartiment Amazon S3, une liste des files d'attente Amazon SQS s'affiche à côté des résultats des vérifications. Le rapport inclut la vérification des ressources Amazon SQS, la vérification de la politique d'accès Amazon SQS, la vérification des clés AWS KMS , la vérification de l'état des clés AWS KMS et la vérification de la politique des clés. AWS KMS
-
Notifications d'événements Amazon SNS
Si des notifications de destination Amazon SNS sont configurées avec le compartiment Amazon S3, une liste des rubriques Amazon SNS s'affiche à côté des résultats des vérifications. Le rapport inclut la vérification des ressources Amazon SNS, la vérification de la politique d'accès Amazon SNS, la vérification des clés AWS KMS , la vérification de l'état des clés AWS KMS et la vérification de la politique des clés. AWS KMS
-
AWS Lambda Notifications d'événements
Si des notifications de AWS Lambda destination sont configurées avec le compartiment Amazon S3, une liste des fonctions Lambda s'affiche à côté des résultats des vérifications. Le rapport inclut le contrôle des ressources Lambda et le contrôle de la politique d'accès Lambda.
-
Références
Systems Manager Automation