Sécurité AWS pour les développeurs
Rahul Singh
Technical Product Manager
La modification qui ne change rien

Jusqu'à trois couches
Dans votre compte, l'une ou l'autre suffit à autoriser
Refusée par toute couche rencontrée

Stratégie basée sur l'identité

Stratégie basée sur l'identité
Stratégie basée sur la ressource

Deux types de stratégies d'identité

Deux types de stratégies d'identité
Commodité ou précision

Pourquoi un compte en attache une
Frontière d'autorisations

Pourquoi un compte en attache une
Frontière d'autorisations
Pourquoi iam:CreateUser n'a rien changé

Pourquoi un compte en attache une
Frontière d'autorisations
Pourquoi iam:CreateUser n'a rien changé
Stratégie de session : une session AssumeRole

Clé de condition
Restreint une autorisation au contexte de la requête
aws:SourceIp : le réseau d'origine

Clé de condition
Restreint une autorisation au contexte de la requête
aws:SourceIp : le réseau d'origine
aws:PrincipalTag : une étiquette sur l'appelantABAC : contrôle d'accès basé sur les attributs

Une table partagée

"Condition": {
"ForAllValues:StringEquals": {
"dynamodb:LeadingKeys": ["${aws:PrincipalTag/tenant}"]
}
}
Une table partagée
Une condition la restreint
ForAllValues : chaque clé fournie doit correspondre"Action": ["dynamodb:Query", "dynamodb:GetItem", "dynamodb:Scan"],
"Condition": {
"ForAllValues:StringEquals": {
"dynamodb:LeadingKeys": ["${aws:PrincipalTag/tenant}"]
}
}
Une table partagée
Une condition la restreint
ForAllValues : chaque clé fournie doit correspondredynamodb:Scan n'en fournit aucune ; rien ne peut échouerSécurité AWS pour les développeurs