Comment créer une règle d'événement EventBridge pour m'avertir que mon compte d'utilisateur racine AWS a été utilisé ?
Dernière mise à jour : 08/12/2021
Comment puis-je recevoir des notifications lorsque mon compte utilisateur racine AWS est utilisé ?
Solution
Lancez une pile AWS CloudFormation pour créer une rubrique Amazon Simple Notification Service (Amazon SNS). Ensuite, créez une règle d'événement Amazon EventBridge pour contrôler les connexions racines userIdentity depuis la console de gestion AWS.
Important : avant de commencer, assurez-vous que vos événements de lecture/écriture AWS CloudTrail Management sont définis sur Tout ou Écriture seule pour les événements EventBridge, afin de déclencher la notification d'événement de connexion. Pour plus d'informations, consultez Événements de lecture et d'écriture.
1. Copiez et collez ce modèle YAML dans votre éditeur favori, puis enregistrez-le.
# Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
# Permission is hereby granted, free of charge, to any person obtaining a copy of this
# software and associated documentation files (the "Software"), to deal in the Software
# without restriction, including without limitation the rights to use, copy, modify,
# merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
# permit persons to whom the Software is furnished to do so.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
# PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
AWSTemplateFormatVersion: '2010-09-09'
Description: ROOT-AWS-Console-Sign-In-via-CloudTrail
Metadata:
AWS::CloudFormation::Interface:
ParameterGroups:
- Label:
default: Amazon SNS parameters
Parameters:
- Email Address
Parameters:
EmailAddress:
Type: String
AllowedPattern: "^[\\x20-\\x45]?[\\w-\\+]+(\\.[\\w]+)*@[\\w-]+(\\.[\\w]+)*(\\.[a-z]{2,})$"
ConstraintDescription: Email address required.
Description: Enter an email address you want to subscribe to the Amazon SNS topic
that will send notifications if your account's AWS root user logs in.
Resources:
RootActivitySNSTopic:
Type: AWS::SNS::Topic
Properties:
DisplayName: ROOT-AWS-Console-Sign-In-via-CloudTrail
Subscription:
- Endpoint:
Ref: EmailAddress
Protocol: email
TopicName: ROOT-AWS-Console-Sign-In-via-CloudTrail
EventsRule:
Type: AWS::Events::Rule
Properties:
Description: Events rule for monitoring root AWS Console Sign In activity
EventPattern:
detail-type:
- AWS Console Sign In via CloudTrail
detail:
userIdentity:
type:
- Root
Name:
Fn::Sub: "${AWS::StackName}-RootActivityRule"
State: ENABLED
Targets:
- Arn:
Ref: RootActivitySNSTopic
Id: RootActivitySNSTopic
DependsOn:
- RootActivitySNSTopic
RootPolicyDocument:
Type: AWS::SNS::TopicPolicy
Properties:
PolicyDocument:
Id: RootPolicyDocument
Version: '2012-10-17'
Statement:
- Sid: RootPolicyDocument
Effect: Allow
Principal:
Service: events.amazonaws.com
Action: sns:Publish
Resource:
- Ref: RootActivitySNSTopic
Topics:
- Ref: RootActivitySNSTopic
Outputs:
EventsRule:
Value:
Ref: EventsRule
Export:
Name:
Fn::Sub: "${AWS::StackName}-RootAPIMonitorEventsRule"
Description: Event Rule ID.
2. Ouvrez la console CloudFormation dans la région USA Est (Virginie du Nord), puis choisissez Créer une pile.
Remarque : la pile CloudFormation doit être créée dans la région USA Est (Virginie du Nord).
3. Choisissez Créer une pile, puis choisissez Avec de nouvelles ressources (standard).
4. Choisissez Charger un fichier modèle, Suivant, puis Choisir un fichier.
5. Choisissez le modèle que vous avez enregistré à l'étape 1, puis choisissez Suivant.
6. Dans Nom de la pile, saisissez un nom significatif pour vous, tel que CloudTrail pour connexion à la console AWS avec compte racine.
7. Dans EmailAddress, saisissez votre adresse e-mail, puis choisissez Suivant.
Remarque : AWS envoie un e-mail de confirmation à cette adresse e-mail.
8. Dans Options, choisissez Suivant, puis Créer.
9. Vérifiez dans votre boîte de réception si vous avez reçu l'e-mail de confirmation envoyé par AWS, puis choisissez Confirmer l'abonnement pour confirmer l'abonnement SNS. Vous recevez le message Abonnement confirmé !
10. Pour tester les notifications, déconnectez-vous à la console de gestion AWS. Ensuite, connectez-vous à la console de gestion AWS avec votre compte utilisateur racine AWS.
11. Vérifiez dans votre boîte de réception que vous avez reçu un message de notification envoyé par AWS. Notez les enregistrements CloudTrail Useridentity, sourceIPAddress et MFAUsed contenant les détails de l'événement de connexion.
Pour ne plus recevoir de notifications, supprimez la pile CloudFormation que vous avez créée à l'étape 2.
Informations connexes
Cet article vous a-t-il été utile ?
Besoin d'aide pour une question technique ou de facturation ?