カスタム属性organisation_idを持つ1つのCognitoユーザプールがあります。 1つの組織に複数のユーザーが存在することがあります。複数の組織が存在する可能性があります。 _idおよびorganisation_idをパーティションキーとして持つカテゴリを維持するために、別のDynamodbテーブルが使用されます。 カテゴリは組織によって所有されるため、特定の組織に所属するユーザーは、そのカテゴリでのみ操作を実行できます。今IAMポリシー条件のCognitoユーザプールカスタム属性Dynamodbファイングレインアクセス
、それは代わりに、サブ/ USER_IDのorganisation_idをとるように私はIAMポリシーを作成することができますどのように
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAccessToOnlyItemsMatchingUserID",
"Effect": "Allow",
"Action": [
"dynamodb:GetItem",
"dynamodb:BatchGetItem",
"dynamodb:Query",
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:DeleteItem",
"dynamodb:BatchWriteItem"
],
"Resource": [
"arn:aws:dynamodb:us-west-2:123456789012:table/GameScores"
],
"Condition": {
"ForAllValues:StringEquals": {
"dynamodb:LeadingKeys": [
"${cognito:organisation_id(?)}"
],
"dynamodb:Attributes": [
"UserId",
"GameTitle",
"Wins",
"Losses",
"TopScore",
"TopScoreDateTime"
]
},
"StringEqualsIfExists": {
"dynamodb:Select": "SPECIFIC_ATTRIBUTES"
}
}
}
]}
、ここで説明されているように、私の主な要件は、カスタム・ユーザー・プールの属性を取得することですCognitoを介してIAMポリシーでそんなことがあるものか?
その上の任意の最新情報を見ることができますか?現在@danが必要としているところでは、それは可能ではないようです。 Cognitoグループとグループ固有の役割を経由する場合、ハードリミットは25です。カスタムアトリビュートとルールベースのロールアサインを経由すると、ソフトリミットは25になります。 両方のリミットでは、1000または10000の組織のいずれにもアプローチできません/グループ。 –