Prévention du problème de l’adjoint confus entre services - Service géré pour Apache Flink

Le service géré Amazon pour Apache Flink était auparavant connu sous le nom d’Amazon Kinesis Data Analytics pour Apache Flink.

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 du problème de l’adjoint confus entre services

Dans AWS, 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é pour agir sur les ressources d’un autre client, même s’il ne devrait pas avoir les autorisations appropriées, ce qui se traduit par un problème d’adjoint confus.

Pour éviter toute confusion chez les adjoints, AWS fournit des outils qui vous aident à protéger vos données pour tous les services en utilisant des responsables de service qui ont eu accès aux ressources de votre compte. Cette section se concentre sur la prévention du problème de l’adjoint confus entre services spécifique au service géré pour Apache Flink. Cependant, vous pouvez en savoir plus à ce sujet dans la section Le problème de l’adjoint confus du Guide de l’utilisateur IAM.

Dans le contexte du service géré pour Apache Flink, nous vous recommandons d'utiliser les clés de contexte de condition SourceAccount globale aws : SourceArn et aws : dans votre politique de confiance en matière de rôle afin de limiter l'accès au rôle aux seules demandes générées par les ressources attendues.

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.

La valeur de la clé aws:SourceArn doit être l’ARN de la ressource utilisée par le service géré pour Apache Flink, qui est spécifié au format suivant : arn:aws:kinesisanalytics:region:account:resource.

Le moyen le plus efficace de se protéger contre le problème d’adjoint confus consiste à utiliser la clé de contexte de condition globale aws:SourceArn avec l’ARN complet de la ressource.

Si vous ne connaissez pas l’ARN complet de la ressource ou si vous indiquez plusieurs ressources, utilisez la clé aws:SourceArn avec des caractères génériques (*) pour les parties inconnues de l’ARN. Par exemple : arn:aws:kinesisanalytics::111122223333:*.

Les politiques relatives aux rôles que vous fournissez au service géré pour Apache Flink ainsi que les politiques d’approbation relatives aux rôles générés pour vous peuvent utiliser ces clés.

Afin de vous protéger contre le problème d’adjoint confus, effectuez les tâches suivantes :

Pour lutter contre le problème de l’adjoint confus
  1. Connectez-vous à la console de AWS gestion et ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Choisissez Rôles, puis choisissez le rôle que vous souhaitez modifier.

  3. Choisissez Modifier la politique.

  4. Sur la page Modifier la politique d’approbation, remplacez la politique JSON par défaut par une stratégie qui utilise l’une des clés de contexte de condition globale aws:SourceArn et aws:SourceAccount ou les deux. Voir l’exemple de stratégie suivant :

  5. Choisissez Mettre à jour une politique.

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"kinesisanalytics.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "aws:SourceAccount":"Account ID" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:kinesisanalytics:us-east-1:123456789012:application/my-app" } } } ] }