DynamoDB Credentials Init

时间:2016-04-21 07:34:15

标签: .net facebook amazon-web-services amazon-dynamodb credentials

我在使用DynamoDB和facebook登录的应用程序上工作。到目前为止,我只使用我的FB帐户来测试我的应用程序。当我想用另一个测试时,我对dynamoDB的所有请求都被拒绝了。在对所有内容进行三重检查后,我认为我构建了我的凭据错误。这是我的代码:

credentials = new CognitoAWSCredentials(
             "eu-west-1:MY_ID_POOL", // IDENTITY POOL ID
             Amazon.RegionEndpoint.EUWest1 // REGION
       );
client = new AmazonDynamoDBClient(credentials, Amazon.RegionEndpoint.EUWest1);
context = new DynamoDBContext(client);
credentials.AddLogin("graph.facebook.com", _Token);

我很难找到我做错了,因为这个代码已经使用我的fb帐户工作了好几个月,但它不适用于我的测试帐户。我尝试将我的测试帐户提升为Facebook开发人员的开发和管理员权限,没有任何变化。一旦我尝试向DynamoDB发送请求,我就会使程序崩溃,而不是抛出任何我可以捕获的异常。

非常感谢您的回答。

编辑:管理最终捕获异常:

登录不匹配。请至少包含一个此身份或身份池的有效登录信息。

当我尝试将项目放入数据库时​​。我的身份池授权Facebook登录和应用程序ID是正确的。角色授权一切,所以它应该不是问题。我做错了什么 ?

1 个答案:

答案 0 :(得分:0)

能够修复错误。看起来身份池一次只允许一个用户(这很奇怪,不得不深入研究)。要解决此问题,请在停止应用程序时通过凭据清除ID缓存,并使用以下命令切换到另一个用户:

credentials.ClearIdentityCache();