AWS Unity 3D SDK(Cognito Sync 403禁止错误)

时间:2015-02-12 14:00:18

标签: c# amazon-web-services unity3d amazon-cognito

我们正在使用Unity开发移动游戏,我们将使用AWS服务存储所有用户数据和游戏内容。

我们已经构建了所有集成并存档以与AWS SDK集成以实现统一,DynamoDB和S3正在按预期工作,但我们在使用CognitoStore时遇到了一些问题。

当我们调用_ds.Synchronize()或_syncManager.RefreshDatasetMetadataAsync()时,我们得到403 Forbidden Error。

  

WebException:403 Forbidden Rethrow as AmazonServiceException:403   Forbidden Rethrow as DataStorageException:无法列出记录   数据集:帐户

简化政策:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "mobileanalytics:PutEvents",
        "cognito-sync:*"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

完整政策:http://goo.gl/dcUkPC

代码:

try {
CognitoSyncClientManager.init();
_syncManager = CognitoSyncClientManager.CognitoSyncManagerInstance;                                     
} catch (Exception ex) {
Debug.LogException (ex);
return;
}

_dsAccount = _syncManager.OpenOrCreateDataset ("Account");
_dsAccount.Put ("test", "1");
_dsAccount.Synchronize ();

不确定我们是否遗漏了任何内容,但我花了3天时间搜索并尝试解决此问题。如果你们中的任何人都能帮忙解决这个问题,我将感激不尽。

你们中有谁知道如何解决这个问题?

注意:我们在Unity 3D示例项目中遇到了同样的问题。

更新12/02/15 将SDK更新为1.0.1,但我收到错误400 Bad request。仍在努力使其发挥作用。

谢谢!

1 个答案:

答案 0 :(得分:0)

刚刚对使用Windows 7的虚拟机进行了测试,相同的项目/设置并且有效。

我在我的Mac上重复测试,但它确实有效。

不确定是不是问题,但是在Windows中打开相同的项目,而在Mac上再次使用v1.0.1 aws开启了Unity SDK。也许是团结缓存或类似问题。但它正在发挥作用。

谢谢!