Amazon dynamodb 我可以基于Cognito ID指定AWS DynamoDB策略吗?

Amazon dynamodb 我可以基于Cognito ID指定AWS DynamoDB策略吗?,amazon-dynamodb,amazon-cognito,Amazon Dynamodb,Amazon Cognito,我是否可以对AWS DynamoDB表应用策略,但根据访问它的用户的Cognito ID对其进行限制 例如,Customer表的主散列键等于Cognito ID。当共享相同ID的用户以外的任何人尝试获取项目时,他们将收到未经授权的异常 (非DynanoDB策略也可能有效。)您应该能够使用与其他策略相同的技术来执行类似的操作。您应该将以下内容作为策略中的密钥: { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow

我是否可以对AWS DynamoDB表应用策略,但根据访问它的用户的Cognito ID对其进行限制

例如,Customer表的主散列键等于Cognito ID。当共享相同ID的用户以外的任何人尝试获取项目时,他们将收到未经授权的异常


(非DynanoDB策略也可能有效。)

您应该能够使用与其他策略相同的技术来执行类似的操作。您应该将以下内容作为策略中的密钥:

{
  "Version": "2012-10-17",
  "Statement": [{
      "Effect": "Allow",
      "Action": [
        "dynamodb:DeleteItem",
        "dynamodb:GetItem",
        "dynamodb:PutItem",
        "dynamodb:Query"
      ],
      "Resource": ["arn:aws:dynamodb:REGION:123456789012:table/UserData"],
      "Condition": {
        "ForAllValues:StringEquals": {
          "dynamodb:LeadingKeys": ["${cognito-identity.amazonaws.com:sub}"]}
    }
  }]
}

您是否将用户id定义为散列,将另一个属性定义为范围或仅定义散列键?我正在用has+范围尝试下面的解决方案,但不幸的是,它对我不起作用。我一直收到“AccessDeniedException”。还有哈希键的名称是什么。我称之为“用户ID”。不确定确切的姓名是否重要。那么,如果我希望教师/主管能够查看所有员工/学生记录,该怎么办?老师的身份和学生的身份不符,对吗?@AlleyOOP你找到答案了吗?