Políticas de seguridad de IAM con PartiQL para DynamoDB - Amazon DynamoDB

Políticas de seguridad de IAM con PartiQL para DynamoDB

Los siguientes permisos son necesarios:

  • Para leer elementos que utilizan PartiQL para DynamoDB, debe tener el permiso dynamodb:PartiQLSelect en la tabla o índice.

  • Para insertar elementos utilizando PartiQL para DynamoDB, debe tener el permiso dynamodb:PartiQLInsert en la tabla o índice.

  • Para actualizar elementos con PartiQL para DynamoDB, debe tener el permiso dynamodb:PartiQLUpdate en la tabla o índice.

  • Para eliminar elementos que utilizan PartiQL para DynamoDB, debe tener el permiso dynamodb:PartiQLDelete en la tabla o índice.

Ejemplo: Permitir todas las instrucciones PartiQL para DynamoDB (Select/Insert/Update/Delete) en una tabla

La siguiente política de IAM concede permisos para ejecutar todas las instrucciones PartiQL para DynamoDB en una tabla.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "dynamodb:PartiQLInsert", "dynamodb:PartiQLUpdate", "dynamodb:PartiQLDelete", "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/Music" ] } ] }

Ejemplo: Permitir que PartiQL para DynamoDB seleccione las instrucciones en una tabla

La siguiente política de IAM concede permisos para ejecutar la instrucción selectsobre una tabla específica.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/Music" ] } ] }

Ejemplo: Permitir instrucciones de inserción de PartiQL para DynamoDB en un índice

La siguiente política de IAM concede permisos para ejecutar la instrucción insert en un índice específico.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "dynamodb:PartiQLInsert" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/Music/index/index1" ] } ] }

Ejemplo: Permitir las instrucciones transaccionales de PartiQL para DynamoDB sólo en una tabla

La siguiente política de IAM concede permisos para ejecutar solamente instrucciones transaccionales en una tabla determinada.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "dynamodb:PartiQLInsert", "dynamodb:PartiQLUpdate", "dynamodb:PartiQLDelete", "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/Music" ], "Condition":{ "StringEquals":{ "dynamodb:EnclosingOperation":[ "ExecuteTransaction" ] } } } ] }

Ejemplo: Permitir lecturas y escrituras no transaccionales de PartiQL para DynamoDB y bloquear lecturas y escrituras transaccionales de PartiQL en una tabla.

La siguiente directiva de IAM otorga permisos para ejecutar lecturas y escrituras no transaccionales de PartiQL para DynamoDB a la vez que bloquea lecturas y escrituras transaccionales de PartiQL para DynamoDB.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Deny", "Action":[ "dynamodb:PartiQLInsert", "dynamodb:PartiQLUpdate", "dynamodb:PartiQLDelete", "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/Music" ], "Condition":{ "StringEquals":{ "dynamodb:EnclosingOperation":[ "ExecuteTransaction" ] } } }, { "Effect":"Allow", "Action":[ "dynamodb:PartiQLInsert", "dynamodb:PartiQLUpdate", "dynamodb:PartiQLDelete", "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/Music" ] } ] }

Ejemplo: permitir instrucciones Select y denegar instrucciones de análisis de tabla completa en PartiQL para DynamoDB

La siguiente política de IAM concede permisos para ejecutar la instrucción select en una tabla específica mientras se bloquean las instrucciones select que dan como resultado un examen completo de toda la tabla.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Deny", "Action":[ "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/WatchList" ], "Condition":{ "Bool":{ "dynamodb:FullTableScan":[ "true" ] } } }, { "Effect":"Allow", "Action":[ "dynamodb:PartiQLSelect" ], "Resource":[ "arn:aws:dynamodb:us-west-2:123456789012:table/WatchList" ] } ] }