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.
Prévention interservices confuse des adjoints sur Amazon EventBridge
Le problème de député confus est un problème de sécurité dans lequel une entité qui n’est pas autorisée à effectuer une action peut contraindre une entité plus privilégiée à le faire. En AWS, l'usurpation d'identité interservices peut entraîner la confusion des adjoints. L’usurpation d’identité entre services peut se produire lorsqu’un service (le service appelant) appelle un autre service (le service appelé). Le service appelant peut être manipulé et ses autorisations utilisées pour agir sur les ressources d’un autre client auxquelles on ne serait pas autorisé d’accéder autrement. Pour éviter cela, AWS fournit des outils qui vous aident à protéger vos données pour tous les services avec des principaux de service qui ont eu accès aux ressources de votre compte.
Nous recommandons d'utiliser les clés de contexte de condition aws:SourceAccount
globale aws:SourceArn
et les clés contextuelles dans les politiques relatives aux ressources afin de limiter les autorisations qu'Amazon EventBridge accorde à un autre service sur la ressource. Utilisez aws:SourceArn
si vous souhaitez qu’une seule ressource soit associée à l’accès entre services. Utilisez aws:SourceAccount
si vous souhaitez autoriser l’association d’une ressource de ce compte à l’utilisation interservices.
Le moyen le plus efficace de se protéger contre le problème de confusion des adjoints consiste à utiliser la clé de contexte de la condition aws:SourceArn
globale avec l'intégralité ARN de la ressource. Si vous ne connaissez pas l'intégralité ARN de la ressource ou si vous spécifiez plusieurs ressources, utilisez la clé de condition contextuelle aws:SourceArn
globale avec des caractères génériques (*
) pour les parties inconnues duARN. Par exemple, arn:aws:
. servicename
:*:123456789012
:*
Si la aws:SourceArn
valeur ne contient pas l'ID de compte, tel qu'un compartiment Amazon S3ARN, vous devez utiliser les deux clés de contexte de condition globale pour limiter les autorisations.
Bus d'événements
Pour les cibles des règles du bus d' EventBridge événements, la valeur de aws:SourceArn
doit être la règleARN.
L'exemple suivant montre comment vous pouvez utiliser les touches de contexte de condition aws:SourceAccount
globale aws:SourceArn
et globale EventBridge pour éviter le problème de confusion des adjoints. Cet exemple est destiné à être utilisé dans une politique de confiance des rôles, pour un rôle utilisé par une EventBridge règle.
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:events:*:123456789012:rule/myRule" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }
EventBridge Tuyaux
Pour EventBridge Pipes, la valeur de aws:SourceArn
doit être le tubeARN.
L'exemple suivant montre comment vous pouvez utiliser les touches de contexte de condition aws:SourceAccount
globale aws:SourceArn
et globale EventBridge pour éviter le problème de confusion des adjoints. Cet exemple est destiné à être utilisé dans une politique de confiance des rôles, pour un rôle utilisé par EventBridge Pipes.
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:pipe:*:123456789012::pipe/example" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }