Comment puis-je surveiller l'activité des comptes d'utilisateurs, de rôles et de clés d'accès AWS spécifiques d'IAM ?
Je souhaite consulter et surveiller l'activité des comptes d'identités AWS Identity and Access Management (IAM) spécifiques.
Brève description
Pour consulter et surveiller l'activité du compte associée à des identités IAM spécifiques, vous pouvez utiliser l'un des services et fonctionnalités AWS suivants :
- Historique des événements AWS CloudTrail
- Informations sur les journaux Amazon CloudWatch
- Requêtes Amazon Athena
Résolution
Historique des événements CloudTrail
Remarque : Vous pouvez utiliser CloudTrail pour effectuer des recherches dans l'historique des événements des 90 derniers jours.
1. Ouvrez la console CloudTrail.
2. Choisissez Historique des événements.
3. Dans Filtre, sélectionnez la liste déroulante. Choisissez ensuite Nom d'utilisateur.
Remarque : Vous pouvez également filtrer par clé d'accès AWS.
4. Dans la zone de texte Entrez le nom d'utilisateur ou de rôle, entrez le « nom convivial » de l'utilisateur IAM ou le nom de session de rôle supposé.
Remarque : Le nom de session de rôle pour une session spécifique est la valeur fournie en tant que nom de session lorsque le rôle est assumé. La valeur du champ « Nom d'utilisateur » ne sera pas le nom du rôle pour les appels effectués à l'aide du rôle IAM.
5. Dans le champ Durée, entrez la durée souhaitée. Choisissez ensuite Appliquer.
6. Dans le champ Heure de l'événement, développez l'événement. Choisissez ensuite Afficher l'événement.
L'élément userIdentity contient des détails sur le type d'identité IAM à l'origine de la demande et les informations d'identification fournies.
Exemple d'élément userIdentity qui inclut les informations d'identification de l’utilisateur IAM utilisées pour effectuer un appel d'API
Remarque : Remplacez Alice par le nom d'utilisateur que vous recherchez. Entrez le « nom convivial » de l'utilisateur IAM ou le « nom de session de rôle » du rôle supposé. Le nom de session de rôle pour une session spécifique est la valeur fournie en tant que nom de session lorsque le rôle est assumé. Pour les appels effectués à l'aide du rôle IAM, la valeur du champ userName n'est pas le nom du rôle.
"userIdentity": { "type": "IAMUser", "principalId": "AIDAJ45Q7YFFAREXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }
Exemple d'élément userIdentity qui inclut des informations d'identification de sécurité temporaires
"userIdentity": { "type": "AssumedRole", "principalId": "AROAIDPPEZS35WEXAMPLE:AssumedRoleSessionName", "arn": "arn:aws:sts::123456789012:assumed-role/RoleToBeAssumed/AssumedRoleSessionName", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "20131102T010628Z" }, "sessionIssuer": { "type": "Role", "principalId": "AROAIDPPEZS35WEXAMPLE", "arn": "arn:aws:iam::123456789012:role/RoleToBeAssumed", "accountId": "123456789012", "userName": "RoleToBeAssumed" } } }
Remarque : L'historique des événements CloudTrail utilise le nom de session de rôle supposé comme nom d'utilisateur pour le filtrage des événements.
L'appel d'API utilise des informations d'identification de sécurité temporaires obtenues en assumant un rôle IAM. L'élément contient des détails supplémentaires sur le rôle assumé pour obtenir les informations d'identification.
Remarque : Si vous ne voyez aucune activité utilisateur, vérifiez que le service AWS est pris en charge et que l'événement d'API est enregistré par CloudTrail. Pour plus d'informations, consultez les rubriques relatives aux services AWS pour CloudTrail.
Pour utiliser CloudWatch Logs Insights
Remarque : Vous pouvez utiliser CloudWatch Logs Insights pour effectuer des recherches dans l'historique des API au-delà des 90 derniers jours. Vous devez avoir créé et configuré une piste pour vous connecter à Amazon CloudWatch Logs. Pour plus d'informations, consultez la section Création d’une piste.
1. Ouvrez la console CloudWatch.
2. Choisissez Journaux.
3. Dans le champ Groupes de journaux, choisissez votre groupe de journaux.
4. Choisissez Groupe de journaux de recherche.
5. Dans le champ Filtrer les événements, entrez une requête pour rechercher les appels d'API d'un utilisateur ou des actions d'API spécifiques. Choisissez ensuite l'icône d'actualisation.
Exemple de requête pour rechercher dans les journaux les appels d'API d'un utilisateur
Remarque : Remplacez Alice par le nom d'utilisateur que vous recherchez. Entrez le « nom convivial » de l'utilisateur IAM ou le « nom de session de rôle » du rôle supposé. Le nom de session de rôle pour une session spécifique est la valeur fournie en tant que nom de session lorsque le rôle est assumé. Pour les appels effectués à l'aide du rôle IAM, la valeur du champ userName n'est pas le nom du rôle.
{ $.userIdentity.userName = "Alice" }
Exemple de requête pour rechercher dans les journaux des actions d'API spécifiques
Remarque : L'exemple de requête suivant recherche l'action d'API DescribeInstances.
{ ($.eventName = "DescribeInstances") && ($.requestParameters.userName = "Alice" ) }
Pour plus d'informations, consultez la syntaxe de requête de CloudWatch Logs Insights.
Pour utiliser les requêtes Athena
Remarque : Vous pouvez utiliser Athena pour interroger les journaux CloudTrail des 90 derniers jours.
1. Ouvrez la console Athena.
2. Choisissez Éditeur de requêtes.
3. Entrez l'un des exemples de requêtes suivants en fonction de votre cas d'utilisation. Choisissez ensuite Exécuter la requête :
Exemple de requête pour renvoyer tous les événements CloudTrail effectués par un utilisateur IAM spécifique
Important : Remplacez athena-table par le nom de votre table Athena. Remplacez Alice par l'utilisateur IAM dont vous souhaitez consulter l'activité du compte.
SELECT * FROM athena-table WHERE useridentity.type = 'IAMUser' AND useridentity.username LIKE 'Alice';
Exemple de requête pour filtrer toutes les activités d'API effectuées par un rôle IAM
Remarque : Remplacez role-name par le nom de votre rôle IAM.
SELECT * FROM athena-table WHERE useridentity.sessionContext.sessionissuer.arn LIKE '%role-name%' AND useridentity.sessionContext.sessionissuer.type = 'Role';
Exemple de requête correspondant au rôle ARN
SELECT * FROM athena-table WHERE useridentity.sessionContext.sessionissuer.arn = 'arn:aws:iam::account-id123456789:role/role-name' AND useridentity.sessionContext.sessionissuer.type = 'Role';
Exemple de requête pour filtrer toutes les activités à l'aide de l'ID de clé d'accès IAM
SELECT eventTime, eventName, userIdentity.principalId,eventSource FROM athena-table WHERE useridentity.accesskeyid like 'AKIAIOSFODNN7EXAMPLE'
Informations connexes
Comment utiliser AWS CloudTrail pour suivre les appels d'API vers mes instances Amazon EC2 ?
Vidéos associées

Contenus pertinents
- demandé il y a 3 moislg...
- demandé il y a 2 moislg...
- demandé il y a un moislg...
- demandé il y a 8 moislg...
- AWS OFFICIELA mis à jour il y a 10 mois
- AWS OFFICIELA mis à jour il y a 4 mois
- AWS OFFICIELA mis à jour il y a un an
- AWS OFFICIELA mis à jour il y a un an