Bonne pratique3 min de lecture · Mis à jour le 29 sept. 2026
AWS IAM — bonnes pratiques du moindre privilège
Structurer les identités AWS, écrire des politiques minimales, utiliser les rôles et détecter les droits excessifs.
- #least-privilege
- #aws
- #mfa
Principes
- Pas d'utilisateurs IAM à clés longues pour les humains : fédération (IAM Identity Center) + MFA.
- Rôles pour les workloads (instance profile, IRSA sur EKS, rôles Lambda) : identifiants temporaires.
- Moindre privilège : partir de zéro et ajouter, pas l'inverse.
- Compte racine : MFA matériel, aucune clé d'accès, usage exceptionnel.
Anatomie d'une politique
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "LectureRapports",
"Effect": "Allow",
"Action": ["s3:GetObject"],
"Resource": "arn:aws:s3:::rapports-prod/exports/*",
"Condition": { "Bool": { "aws:SecureTransport": "true" } }
},
{
"Sid": "ListerPrefixe",
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::rapports-prod",
"Condition": { "StringLike": { "s3:prefix": ["exports/*"] } }
}
]
}
Évaluation : Deny explicite > Allow explicite > Deny implicite. Les SCP d'Organizations et les permission boundaries plafonnent ce qu'une politique peut accorder.
Anti-patterns
"Action": "*"ou"Resource": "*"hors administration.iam:PassRolesur*: permet l'escalade de privilèges.- Politiques inline dupliquées partout → préférer des politiques gérées versionnées (IaC).
- Clés d'accès dans le code ou les variables CI.
Outils de contrôle
aws iam generate-credential-report && aws iam get-credential-report
aws accessanalyzer list-findings --analyzer-arn <arn>
aws iam simulate-principal-policy --policy-source-arn <role-arn> \
--action-names s3:DeleteObject --resource-arns arn:aws:s3:::rapports-prod/exports/x
IAM Access Analyzer peut générer une politique minimale à partir de l'activité CloudTrail réelle.
Revue périodique
Trimestriellement : identifiants inutilisés > 90 jours, rôles sans usage, politiques *, accès cross-compte, conformité MFA.