Gestion des identités et des accès dans Kinesis Data Analytics - Manuel du développeur des applications Amazon Kinesis Data Analytics pour SQL

Pour les nouveaux projets, nous vous recommandons d’utiliser le nouveau service géré pour Apache Flink Studio plutôt que les applications Kinesis Data Analytics pour SQL. Le service géré pour Apache Flink Studio allie facilité d’utilisation et capacités analytiques avancées, ce qui vous permet de créer des applications sophistiquées de traitement des flux en quelques minutes.

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.

Gestion des identités et des accès dans Kinesis Data Analytics

Amazon Kinesis Data Analytics a besoin d’autorisations pour lire les enregistrements provenant d’une source de diffusion que vous spécifiez dans la configuration d’entrée de votre application. Amazon Kinesis Data Analytics a également besoin d’autorisations pour écrire les résultats de votre application dans les flux que vous spécifiez dans la configuration de sortie de votre application.

Vous pouvez accorder ces autorisations en créant un rôle IAM qu’Amazon Kinesis Data Analytics peut endosser. Les autorisations que vous accordez à ce rôle déterminent ce qu’Amazon Kinesis Data Analytics peut faire lorsque le service assume ce rôle.

Note

Les informations de cette section sont utiles si vous voulez créer un rôle IAM vous-même. Lorsque vous créez une application dans la console Amazon Kinesis Data Analytics, celle-ci peut créer un rôle IAM pour vous à ce moment-là. La console utilise la convention d’attribution des noms suivante pour les rôles IAM qu’elle crée :

kinesis-analytics-ApplicationName

Une fois le rôle créé, vous pouvez le vérifier, ainsi que les stratégies attachées dans la console IAM.

Deux stratégies sont attachées à chaque rôle IAM. Dans la stratégie d'approbation, vous spécifiez qui peut endosser le rôle. Dans la stratégie d'autorisations (il peut y en avoir plusieurs), vous spécifiez les autorisations que vous voulez accorder à ce rôle. Les sections suivantes décrivent ces stratégies que vous pouvez utiliser lorsque vous créez un rôle IAM.

Stratégie d’approbation

Pour accorder à Amazon Kinesis Data Analytics des autorisations pour assumer un rôle afin d’accéder à une source de streaming ou de référence, vous pouvez attacher la stratégie d’approbation suivante à un rôle IAM :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "kinesisanalytics.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Stratégie d’autorisations

Si vous créez un rôle IAM pour permettre à Amazon Kinesis Data Analytics de lire à partir d’une source de streaming d’une application, vous devez accorder des autorisations pour les actions de lecture pertinentes. En fonction de votre source (par exemple, un flux Kinesis, un flux de diffusion Firehose ou une source de référence dans un compartiment Amazon S3), vous pouvez joindre la politique d'autorisation suivante.

Stratégie d’autorisations pour la lecture d’un flux Kinesis

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadInputKinesis", "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": [ "arn:aws:kinesis:aws-region:aws-account-id:stream/inputStreamName" ] } ] }

Politique d'autorisation pour lire un stream de diffusion Firehose

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadInputFirehose", "Effect": "Allow", "Action": [ "firehose:DescribeDeliveryStream", "firehose:Get*" ], "Resource": [ "arn:aws:firehose:aws-region:aws-account-id:deliverystream/inputFirehoseName" ] } ] }
Note

L’autorisation firehose:Get* fait référence à une méthode accesseur interne qui utilise Kinesis Data Analytics pour accéder au flux. Il n'y a pas d'accès public pour un stream de diffusion Firehose.

Si vous demandez à Amazon Kinesis Data Analytics d’écrire la sortie dans des destinations externes dans la configuration de sortie de votre application, vous devez accorder les autorisations suivantes au rôle IAM.

Stratégie d’autorisations pour l’écriture dans un flux Kinesis

{ "Version": "2012-10-17", "Statement": [ { "Sid": "WriteOutputKinesis", "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:PutRecord", "kinesis:PutRecords" ], "Resource": [ "arn:aws:kinesis:aws-region:aws-account-id:stream/output-stream-name" ] } ] }

Stratégie d'autorisations pour l'écriture dans un flux de diffusion Firehose

{ "Version": "2012-10-17", "Statement": [ { "Sid": "WriteOutputFirehose", "Effect": "Allow", "Action": [ "firehose:DescribeDeliveryStream", "firehose:PutRecord", "firehose:PutRecordBatch" ], "Resource": [ "arn:aws:firehose:aws-region:aws-account-id:deliverystream/output-firehose-name" ] } ] }

Stratégie d’autorisations pour la lecture d’une source de données de référence à partir d’un compartiment Amazon S3

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": "*" } ] }