gpt4 book ai didi

ios - 亚马逊网络服务 SDK iOS

转载 作者:可可西里 更新时间:2023-11-01 04:38:42 24 4
gpt4 key购买 nike

我已经尝试将 AWS 与 iOS 结合使用 2 天了。我从这里下载了示例项目:https://github.com/awslabs/aws-sdk-ios-samples

我完全按照步骤说的做了,我用cocoapods链接了所有的库。

我还创建了一个存储桶,并再次按照有关如何获取 ID 的步骤进行操作,以便在代码中更改它,如下所示:

AWSCognitoCredentialsProvider *credentialsProvider = [AWSCognitoCredentialsProvider
credentialsWithRegionType:AWSRegionUSEast1
accountId:AWSAccountID
identityPoolId:CognitoPoolID
unauthRoleArn:CognitoRoleUnauth
authRoleArn:nil];

所以基本上当我尝试上传一些图像/文件时(在使用亚马逊 S3 存储服务的示例中,我得到一个错误:

2014-09-04 15:11:57.475 S3TransferManagerSample[5437:400b] AWSiOSSDKv2 [Error] AWSCredentialsProvider.m
line:356 | __40-[AWSCognitoCredentialsProvider refresh]_block_invoke299 | Unable to refresh.
Error is [Error Domain=com.amazonaws.AWSSTSErrorDomain Code=0 "The operation couldn’t be completed. (com.amazonaws.AWSSTSErrorDomain error 0.)"
UserInfo=0x14d17770 {Type=Sender, Message=Not authorized to perform sts:AssumeRoleWithWebIdentity, __text=(
"\n ",
"\n ",
"\n ",
"\n "
), Code=AccessDenied}]

明确一点,我已经创建了一个角色并为其指定了一个策略:AdministratorAccess 并使用角色 ARN 来设置

unauthRoleArn:CognitoRoleUnauth   

我已经阅读了文档,但似乎无法在任何地方找到问题所在。我觉得这与角色和赋予角色的政策有关。

我非常感谢有关如何开始或如何解决此问题的任何提示。

谢谢,如果您需要有关该问题的更多详细信息,请随时发表评论,我会提供更多信息,因为问题有点冗长。

最佳答案

您遇到的错误是由于您角色中的信任关系,而不是角色凭据的权限。

您必须确保您角色的信任关系:

  1. 信任您正在使用的身份池(aud 与身份池 ID 匹配)。
  2. 使用提供的身份验证信任身份(amr 匹配未验证已验证,具体取决于您的用例)。

修改在设置向导期间创建的角色或重复使用角色时要小心,因为这 2 个值可能不匹配并生成上述错误。

您还可以找到 this blog post有助于理解 Cognito 身份验证的工作原理。

关于ios - 亚马逊网络服务 SDK iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25665767/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com