AWS Lake Formation: CLI grant_permissions: неизвестный параметр в Resource.Table: "TableWildcard"

Мы пытаемся предоставить разрешения (с помощью интерфейса командной строки AWS) для пользователя, чтобы иметь разрешение SELECT для всех таблиц в базе данных в AWS Lake Formation.

На основании документации; Справочник по разрешениям на образование озера и предоставление разрешений для таблиц

Мы попытались выполнить следующую команду:

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::000000000000:user/spongebob --permissions "SELECT" --permissions-with-grant-option "SELECT" --resource '{ ""Table"": { ""DatabaseName"": ""somedatabase"", ""TableWildcard"": {} } }'

Что вернуло следующую ошибку:

Parameter validation failed: Missing required parameter in Resource.Table: "Name" Unknown parameter in Resource.Table: "TableWildcard", must be one of: DatabaseName, Name

Мы попробовали несколько вариантов команды (хотя в документации сказано, что это должен быть пустой словарь), и мы пришли к выводу, что это должно быть связано с версией API, которую мы вызываем при выполнении команды.

Сможет ли кто-нибудь подтвердить, является ли это проблемой версии API, или что-то не хватает в документации (ссылка выше), которую мы пропустили.

Ура

1 ответ

Решение

Это определенно несоответствие версий. Та же ошибка возникла из-за более старой версии boto3 в лямбде.

Обновите aws cli и попробуйте еще раз:

sudo pip3 install awscli --force-reinstall --upgrade
Другие вопросы по тегам