У меня есть приложение AppSyn c, определенное с использованием основного стека CloudFormation и более десятка вложенных стеков. Каждый вложенный стек определяет таблицу DynamoDB, источник данных AppSyn c для этой таблицы и роль IAM для этого источника данных для доступа к этой таблице. Источник данных зависит от роли, которая зависит от таблицы.
Я хотел бы объединить эти роли IAM по трем причинам:
- Определения ролей являются очень повторяющимися и стандартными. y.
- Существует много копий этого приложения, и оно добавляет множество ролей IAM - достаточно, чтобы мы работали близко к мягким пределам.
- Некоторые преобразователи используют пакет DynamoDB операции для доступа к нескольким таблицам, поэтому, по крайней мере, некоторые роли IAM должны в любом случае предоставлять доступ к нескольким таблицам.
Я не хочу предоставлять полный доступ к ролям всем таблицам DynamoDB в учетной записи.
Самый простой способ предоставить одной роли доступ к каждой требуемой таблице - это перечислить их вручную в документе политики. Это имеет очевидный недостаток, заключающийся в том, что при добавлении новых таблиц политика должна быть вручную синхронизирована c. Однако есть и проблема зависимости: источник данных во вложенном стеке зависит от роли в главном стеке, которая зависит от таблиц во вложенных стеках.
Я бы хотел использовать теги: grant для всех Таблицы DynamoDB, которые имеют определенный тег, затем установите этот тег для каждой таблицы. Таким образом, роль IAM не нужно будет редактировать при добавлении новой таблицы. Но, по-видимому, DynamoDB не поддерживает условия на основе тегов .
Существует ли простой способ предоставления доступа к одной роли IAM многим таблицам DynamoDB без предоставления доступа ко всем DynamoDB и без индивидуального перечисления таблицы в роли?