Ios 亚马逊数据插入
我正在使用amazon ios sdk与amazon服务一起插入图像、视频和音频数据。 但我们不能这样做。我正在遵循所有步骤,但无法理解我们是如何为用户设置角色的。以下是上载时出现的错误:Ios 亚马逊数据插入,ios,iphone,amazon-web-services,amazon-s3,Ios,Iphone,Amazon Web Services,Amazon S3,我正在使用amazon ios sdk与amazon服务一起插入图像、视频和音频数据。 但我们不能这样做。我正在遵循所有步骤,但无法理解我们是如何为用户设置角色的。以下是上载时出现的错误: Error Domain=com.amazonaws.AWSSTSErrorDomain Code=0 "The operation couldn’t be completed. (com.amazonaws.AWSSTSErrorDomain error 0.)" UserInfo=0x175673b0
Error Domain=com.amazonaws.AWSSTSErrorDomain Code=0 "The operation couldn’t be completed. (com.amazonaws.AWSSTSErrorDomain error 0.)" UserInfo=0x175673b0 {Type=Sender, Message=Not authorized to perform sts:AssumeRoleWithWebIdentity, __text=(
"\n ",
"\n ",
"\n ",
"\n "
), Code=AccessDenied}
请提供您的指导。我认为最简单的方法是使用sts:AssumeRoleWitheBidentity操作并在您的角色中添加“生效”:“允许”。
请看示例。您的问题中没有足够的细节来帮助您,因此让我们先做一些假设 根据您提供的文档链接,我假设您正在尝试从iOS移动应用程序将文件上载到S3 如何在应用程序中获取凭据?我假设您使用的是Cognito标识() 如果我的两个假设是正确的,那么产生错误消息的一个常见原因是Cognito角色的信任策略中的错误 角色有两部分,第一部分是该角色授予的权限集。第二,信托政策,描述谁(或什么)有权担任这一角色 对于具有已验证用户的Cognito角色,信任策略应如下所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Federated": "cognito-identity.amazonaws.com"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"cognito-identity.amazonaws.com:aud": "us-east-1:12345678-abcd-abcd-abcd-123456790ab"
},
"ForAnyValue:StringLike": {
"cognito-identity.amazonaws.com:amr": "unauthenticated"
}
}
}
]
}
有关如何修改现有角色的说明,请检查