Я пишу политику пользователя с использованием AWS Cognito User Pools для приложения, которое должно быть совместимо со старой специальной системой управления пользователями, которую мы ранее использовали на S3 с IAM, в то время как мы переходим к более совершенной модели управления пользователями с использованием Cognito.
Старая система использовала arn:aws:s3:::[Our Bucket Name]/${aws:username}/*
в групповой политике, чтобы разрешить пользователю доступ только к объектам, используя свое имя пользователя.Я думал, что использование одного и того же имени пользователя в Cognito позволит нам использовать дублирующую политику ролей, предоставляя пользователям Cognito одинаковый доступ, но согласно this , aws:username
отсутствует для Cognito;он имеет только aws:userid
, который, если я читаю это право, по сути является случайно сгенерированной уникальной строкой, которая не имеет ничего общего с именем пользователя и поэтому не может использоваться для этой цели.
Есть ли какая-либодругим способом я могу предоставить пользователю Cognito доступ к папке с заданным именем пользователя IAM в S3 на основе того же имени с помощью политики ролей?Единственный способ, о котором я могу подумать, - это создавать собственные политики для каждого пользователя, но я бы предпочел свести к минимуму изменения в нашей существующей системе создания пользователей.