结算AWS“无权”我使用AWS移动枢纽的iOS错误信息
问题描述:
。我无法访问我的应用程序中的一个dynamodb表(RemoteFileInfos)。我得到的错误信息是:结算AWS“无权”我使用AWS移动枢纽的iOS错误信息
2017-06-12 13:19:49.851462-0500 FormValet-R[3659:1789148] Error Domain=com.amazonaws.AWSServiceErrorDomain Code=6 "(null)" UserInfo={__type=com.amazon.coral.service#AccessDeniedException, Message=User: arn:aws:sts::999999999:assumed-role/[role name]/CognitoIdentityCredentials is not authorized to perform: dynamodb:UpdateItem on resource: [dynamodb table ARN]}
写在我的应用程序中的其他表(用户和RemoteShareInfos)时,我没有得到这个错误。
这里是上面提到的嵌入认证的作用“nosqldatabase”政策([角色名):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:BatchWriteItem",
"dynamodb:DeleteItem",
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:BatchGetItem",
"dynamodb:DescribeTable",
"dynamodb:GetItem",
"dynamodb:ListTables",
"dynamodb:Query",
"dynamodb:Scan"
],
"Resource": [
"arn:aws:dynamodb:us-east-1:999999999:table/Users",
"arn:aws:dynamodb:us-east-1:999999999:table/Users/*",
"arn:aws:dynamodb:us-east-1:999999999:table/RemoteFileInfos",
"arn:aws:dynamodb:us-east-1:999999999:table/RemotFileInfos/*",
"arn:aws:dynamodb:us-east-1:999999999:table/RemoteShareInfos",
"arn:aws:dynamodb:us-east-1:999999999:table/RemoteShareInfos/*"
]
}
]
}
我注意到在我的角色ARN第三令牌是“IAM”(即“阿尔恩:aws:iam :: 99999999999 ...)而错误消息中的角色ARN具有“sts”的第三个标记(即“arn:aws:sts :: 99999999999 ...)。这可能是问题吗?
谢谢
答
程序员错误。错误消息中的表名与实际的表名不一样。我拼错了AWSDynamoDBObjectModel子类中的表名。
你确定了'99999999999'是您的帐号? –
谢谢,丹尼尔。只是我不得不寻找的那种错误。 –