As seguintes permissões são necessárias:
-
Para ler itens usando PartiQL para DynamoDB, é necessário ter a permissão
dynamodb:PartiQLSelect
na tabela ou no índice. -
Para inserir itens usando PartiQL para DynamoDB, é necessário ter a permissão
dynamodb:PartiQLInsert
na tabela ou no índice. -
Para atualizar itens usando PartiQL para DynamoDB, é necessário ter a permissão
dynamodb:PartiQLUpdate
na tabela ou no índice. -
Para excluir itens usando PartiQL para DynamoDB, é necessário ter a permissão
dynamodb:PartiQLDelete
na tabela ou no índice.
Exemplo: permitir todas as instruções PartiQL para DynamoDB (Select/Insert/Update/Delete) em uma tabela
A política do IAM a seguir concede permissões para executar todas as instruções PartiQL para DynamoDB em uma tabela.
{
"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"
]
}
]
}
Exemplo: permitir instruções Select PartiQL para DynamoDB em uma tabela
A política do IAM a seguir concede permissões para executar a instrução select
em uma tabela específica.
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":[
"dynamodb:PartiQLSelect"
],
"Resource":[
"arn:aws:dynamodb:us-west-2:123456789012:table/Music"
]
}
]
}
Exemplo: permitir instruções Insert PartiQL para DynamoDB em um índice
A política do IAM a seguir concede permissões para executar a instrução insert
em um í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"
]
}
]
}
Exemplo: permitir instruções transacionais PartiQL para DynamoDB somente em uma tabela
A política do IAM a seguir concede permissões para executar somente instruções transacionais em uma tabela específica.
{
"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"
]
}
}
}
]
}
Exemplo: permitir leituras e gravações não transacionais PartiQL para DynamoDB e bloquear leituras e gravações transacionais PartiQL em uma tabela.
A política do IAM a seguir concede permissões para executar leituras e gravações não transacionais PartiQL para DynamoDB ao mesmo tempo que bloqueia leituras e gravações transacionais 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"
]
}
]
}
Exemplo: permitir instruções Select e negar instruções de verificação de tabela completa em PartiQL para DynamoDB
A política do IAM a seguir concede permissões para executar a instrução select
em uma tabela específica ao mesmo tempo que bloqueia instruções select
que resultam em uma verificação de tabela completa.
{
"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"
]
}
]
}