Creación de políticas de IAM personalizadas para cuadernos de Studio de Managed Service para Apache Flink - Managed Service para Apache Flink

Amazon Managed Service para Apache Flink Amazon (Amazon MSF) se denominaba anteriormente Amazon Kinesis Data Analytics para Apache Flink.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de políticas de IAM personalizadas para cuadernos de Studio de Managed Service para Apache Flink

Normalmente se utilizan políticas de IAM gestionadas para permitir que su aplicación acceda a recursos dependientes. Si necesita un control más preciso sobre los permisos de la aplicación, puede utilizar una política de IAM personalizada. Esta sección contiene ejemplos de políticas de IAM personalizadas.

nota

En los siguientes ejemplos de políticas, sustituya el texto del marcador de posición por los valores de la aplicación.

AWS Glue

El siguiente ejemplo de política otorga permisos para acceder a una AWS Glue base de datos.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "GlueTable", "Effect": "Allow", "Action": [ "glue:GetConnection", "glue:GetTable", "glue:GetTables", "glue:GetDatabase", "glue:CreateTable", "glue:UpdateTable" ], "Resource": [ "arn:aws:glue:us-east-1:123456789012:connection/*", "arn:aws:glue:us-east-1:123456789012:table/<database-name>/*", "arn:aws:glue:us-east-1:123456789012:database/<database-name>", "arn:aws:glue:us-east-1:123456789012:database/hive", "arn:aws:glue:us-east-1:123456789012:catalog" ] }, { "Sid": "GlueDatabase", "Effect": "Allow", "Action": "glue:GetDatabases", "Resource": "*" } ] }

CloudWatch Registros

La siguiente política otorga permisos para acceder a CloudWatch los registros:

{ "Sid": "ListCloudwatchLogGroups", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups" ], "Resource": [ "arn:aws:logs:<region>:<accountId>:log-group:*" ] }, { "Sid": "ListCloudwatchLogStreams", "Effect": "Allow", "Action": [ "logs:DescribeLogStreams" ], "Resource": [ "<logGroupArn>:log-stream:*" ] }, { "Sid": "PutCloudwatchLogs", "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "<logStreamArn>" ] }
nota

Si crea la aplicación mediante la consola, esta añadirá las políticas necesarias para acceder a CloudWatch los registros a su función de aplicación.

Flujos de Kinesis

Su aplicación puede usar un flujo de Kinesis como origen o destino. Su aplicación necesita permisos de lectura para leer desde un flujo de origen y permisos de escritura para escribir en un flujo de destino.

La siguiente política concede permisos para leer desde un flujo de Kinesis utilizado como fuente:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "KinesisShardDiscovery", "Effect": "Allow", "Action": "kinesis:ListShards", "Resource": "*" }, { "Sid": "KinesisShardConsumption", "Effect": "Allow", "Action": [ "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:DescribeStream", "kinesis:DescribeStreamSummary", "kinesis:RegisterStreamConsumer", "kinesis:DeregisterStreamConsumer" ], "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/<stream-name>" }, { "Sid": "KinesisEfoConsumer", "Effect": "Allow", "Action": [ "kinesis:DescribeStreamConsumer", "kinesis:SubscribeToShard" ], "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/<stream-name>/consumer/*" } ] }

La siguiente política concede permisos para escribir en una transmisión de Kinesis utilizada como origen:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "KinesisStreamSink", "Effect": "Allow", "Action": [ "kinesis:PutRecord", "kinesis:PutRecords", "kinesis:DescribeStreamSummary", "kinesis:DescribeStream" ], "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/<stream-name>" } ] }

Si su aplicación accede a un flujo de Kinesis cifrado, debe conceder permisos adicionales para acceder al flujo y a la clave de cifrado del flujo.

La siguiente política concede permisos para acceder a un flujo de origen cifrado y a la clave de cifrado del flujo:

{ "Sid": "ReadEncryptedKinesisStreamSource", "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "<inputStreamKeyArn>" ] } ,

La siguiente política concede permisos para acceder a un flujo de destino cifrado y a la clave de cifrado del flujo:

{ "Sid": "WriteEncryptedKinesisStreamSink", "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": [ "<outputStreamKeyArn>" ] }

Clústeres de Amazon MSK

Para conceder acceso a un clúster de Amazon MSK, debe conceder acceso a la VPC del clúster. Para ver ejemplos de políticas de acceso a una VPC de Amazon, consulte VPC Application Permissions.