Я использую AWS Ampify для создания приложения, в которое пользователи могут загружать изображения, используя уровни доступа к частным или общедоступным файлам, как описано в документации.Помимо этого, я реализовал лямбда-функцию, которая по запросу через API-шлюз изменяет изображение и возвращает ссылку на измененное изображение.
Я хочу, чтобы данный пользователь мог вызывать API иизменять только свои изображения, но не изображения других пользователей;т.е. разрешить лямбда-функции AWS использовать роль выполнения от пользователя cognito.Если я позволю лямбда-функции получить доступ ко всем данным в корзине S3, то она будет работать нормально, но я не хочу, чтобы пользователи могли иметь доступ к изображениям других пользователей.теперь пробую разные вещи безрезультатно.
Теперь я интегрировал API с пулом пользователей, как описано здесь: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-enable-cognito-user-pool.html
И затем я попытался следовать этому руководству:https://aws.amazon.com/premiumsupport/knowledge-center/cognito-user-pool-group/
Что не работает, так как «cognito: role» отсутствует в переменной события lambda_handler (предположительно, потому что нет групп пула пользователей?).
Как правильно поступить в приложении AWS Amplify?Прежде всего, я следовал этому руководству: https://aws.amazon.com/premiumsupport/knowledge-center/cognito-user-pool-group/