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.
IAMpolíticas para usar estados de mapas distribuidos
Al crear flujos de trabajo con la consola Step Functions, Step Functions puede generar IAM políticas automáticamente en función de los recursos de la definición de flujo de trabajo. Estas políticas incluyen los privilegios mínimos necesarios para permitir que la función de máquina de estados invoque la StartExecution
API acción para el estado del mapa distribuido. Estas políticas también incluyen los privilegios mínimos necesarios para que Step Functions pueda acceder a AWS los recursos, como los buckets y objetos de Amazon S3 y las funciones de Lambda. Le recomendamos encarecidamente que incluya solo los permisos que sean necesarios en sus IAM políticas. Por ejemplo, si el flujo de trabajo incluye un estado Map
en modo distribuido, aplique las políticas al bucket y a la carpeta de Amazon S3 específicos que contengan el conjunto de datos.
importante
Si especifica un bucket y un objeto de Amazon S3, o un prefijo, con una ruta de referencia a un par clave-valor existente en la entrada de estado del mapa distribuido, asegúrese de actualizar las IAM políticas de su flujo de trabajo. Limite las políticas hasta los nombres de objeto y bucket a los que se dirige la ruta en tiempo de ejecución.
Ejemplo de IAM política para ejecutar un estado de mapa distribuido
Al incluir un estado de mapa distribuido en sus flujos de trabajo, Step Functions necesita los permisos adecuados para permitir que la función de máquina de estados invoque la StartExecution
API acción para el estado del mapa distribuido.
El siguiente ejemplo IAM de política otorga los privilegios mínimos necesarios a su función de máquina de estado para ejecutar el estado del mapa distribuido.
nota
No olvide reemplazar
por el nombre de la máquina de estado en la que está utilizando el estado Map Distributed. Por ejemplo, stateMachineName
arn:aws:states:
.us-east-2
:123456789012
:stateMachine:mystateMachine
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:StartExecution" ], "Resource": [ "arn:aws:states:
region
:accountID
:stateMachine:stateMachineName
" ] }, { "Effect": "Allow", "Action": [ "states:DescribeExecution", "states:StopExecution" ], "Resource": "arn:aws:states:region
:accountID
:execution:stateMachineName
:*" } ] }
Ejemplo de IAM política para redriving un mapa distribuido
Puede reiniciar las ejecuciones fallidas de flujos de trabajo secundarios en un flujo de trabajo basado en Map Run mediante redriving del flujo de trabajo principal. Un flujo de trabajo principal redriven redrives todos los estados fallidos, incluido el estado Map Distributed. Asegúrese de que su función de ejecución tenga los privilegios mínimos necesarios para poder invocar la RedriveExecution
API acción en el flujo de trabajo principal.
El siguiente ejemplo IAM de política otorga los privilegios mínimos necesarios a su rol de máquina de estado para redriving un estado de mapa distribuido.
nota
No olvide reemplazar
por el nombre de la máquina de estado en la que está utilizando el estado Map Distributed. Por ejemplo, stateMachineName
arn:aws:states:
.us-east-2
:123456789012
:stateMachine:mystateMachine
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:RedriveExecution" ], "Resource": "arn:aws:states:us-east-2:
123456789012
:execution:myStateMachine
/myMapRunLabel
:*" } ] }
Ejemplos de IAM políticas para leer datos de conjuntos de datos de Amazon S3
Los siguientes ejemplos IAM de políticas otorgan los privilegios mínimos necesarios para acceder a sus conjuntos de datos de Amazon S3 mediante la ListObjectsV2 y GetObjectAPIlas acciones.
ejemplo IAMpolítica para el objeto Amazon S3 como conjunto de datos
El siguiente ejemplo muestra una IAM política que concede el mínimo de privilegios para acceder a los objetos organizados
en un bucket de Amazon S3 denominadoprocessImages
.myBucket
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
myBucket
" ], "Condition": { "StringLike": { "s3:prefix": [ "processImages
" ] } } } ] }
ejemplo IAMpolítica para un CSV archivo como conjunto de datos
En el siguiente ejemplo, se muestra una IAM política que concede los privilegios mínimos para acceder a un CSV archivo denominado
.ratings.csv
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
myBucket
/csvDataset
/ratings.csv
" ] } ] }
ejemplo IAMpolítica para un inventario de Amazon S3 como conjunto de datos
El siguiente ejemplo muestra una IAM política que concede los privilegios mínimos para acceder a un informe de inventario de Amazon S3.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
destination-prefix
/source-bucket
/config-ID
/YYYY-MM-DDTHH-MMZ
/manifest.json", "arn:aws:s3:::destination-prefix
/source-bucket
/config-ID
/data/*" ] } ] }
Ejemplo de IAM política para escribir datos en un bucket de Amazon S3
El siguiente ejemplo IAM de política otorga los privilegios mínimos necesarios para escribir los resultados de la ejecución del flujo de trabajo secundario en una carpeta llamada csvJobs
en un bucket de Amazon S3 mediante la PutObject
API acción.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::
resultBucket
/csvJobs
/*" ] } ] }
IAMpermisos para un bucket de Amazon S3 AWS KMS key cifrado
El estado Map Distributed utiliza cargas multiparte para escribir los resultados de ejecución del flujo de trabajo secundario en un bucket de Amazon S3. Si el bucket se cifra con una clave AWS Key Management Service (AWS KMS), también debe incluir los permisos en la política IAM para realizar las acciones kms:Decrypt
, kms:Encrypt
y kms:GenerateDataKey
sobre la clave Estos permisos son necesarios, ya que Amazon S3 debe descifrar y leer datos de las partes de archivos cifrados antes de finalizar la carga multiparte.
El siguiente ejemplo IAM de política concede permisos y kms:GenerateDataKey
acciones a la kms:Decrypt
clave utilizada para cifrar el bucket de Amazon S3kms:Encrypt
, y realiza acciones sobre ella.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:us-east-1:
123456789012
:key/111aa2bb-333c-4d44-5555-a111bb2c33dd
" ] } }
Para obtener más información, consulte Cargar un archivo grande en Amazon S3 con cifrado mediante AWS KMS key
Si su IAM usuario o rol es el Cuenta de AWS mismo que el deKMS key, debe tener estos permisos en la política de claves. Si su IAM usuario o rol pertenece a una cuenta diferente a laKMS key, debe tener los permisos tanto para la política clave como para su IAM usuario o rol.