繁体   English   中英

使用DynamoDB时,此标识池不支持未经身份验证的访问

[英]Unauthenticated access is not supported for this identity pool, while using DynamoDB

我正在探索适用于iOS的AWS,

我正在尝试使用以下内容,
1.DynamoDB
2.Cognito
3.Facebook登录

当没有集成任何LogIn时,我正在使AWS DynamoDB扫描工作。 在使用Facebook集成LogIn之后,我正在将facebook配置为cognito,如下所示:

 if let fbToken = FBSDKAccessToken.currentAccessToken().tokenString{
        let credentialsProvider = AWSCognitoCredentialsProvider(
        regionType: CognitoRegionType,
        identityPoolId: CognitoIdentityPoolId)
        credentialsProvider.logins = [AWSCognitoLoginProviderKey.Facebook.rawValue: fbToken]
 }

但配置完成后,我现在无法访问DynamoDB。 它说: Unauthenticated access is not supported for this identity pool

注意:在我的情况下,LogIn是必需的。

您看到的异常意味着身份池未设置为允许未经身份验证的身份。 但由于您使用Facebook令牌并收到此错误,似乎令牌提供程序上可能未正确设置令牌。

此博客可能很有用https://mobile.awsblog.com/post/Tx92ASFNST8JPV/Using-Amazon-Cognito-with-Swift-sample-app-developer-guide-and-more

听起来您需要查看Cognito用户或角色策略。 看看是否允许通过fb调用创建的用户和未经身份验证的角色访问dynamoDB。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM