2016-06-01 2 views
0

Я хочу разделить доступ в DynamoDB на пользователя. В основном пользователь должен иметь возможность создавать, запрашивать и удалять таблицы (полное чтение/запись), но только созданные им таблицы.Предоставить разрешение «на пользователя» в DynamoDB?

В традиционной базе данных это будет означать предоставление всех прав для базы данных X к пользователю A, и все права на базы данных Y к пользователю B.

Как я могу настроить это в DynamoDB с IAM прав?

+0

У меня есть прошлый опыт ограничения такого доступа, заставляя пользователей иметь определенные префиксы свои таблицы. Что-то like' { "Версия": "2012-10-17", "Заявление": [{ "Sid": "allowallaccess", "Эффект": "Разрешить", "Действие": [ "dynamodb: *" ], "Ресурс": [ "ARN: AWS: dynamodb: мы-запад 2: 123456789012: стол/user_ *" ] } ] } ' – Shibashis

+0

бы, что работа по созданию таблицы также? они могли бы создавать таблицы, начинающиеся с префикса? –

+0

Да, это позволит выполнять операции dynamodb: *. Который включает создание. – Shibashis

ответ

2

Вы можете разделять таблицы базы данных к пользователю путем установки IAM политики как

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