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

AWS Unity 3D SDK ( Cognito Sync 403 Forbidden Error )

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

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

当我们调用 _ds.Synchronize () 或 _syncManager.RefreshDatasetMetadataAsync() 时,我们得到 403 禁止错误。

WebException: 403 Forbidden Rethrow as AmazonServiceException: 403 Forbidden Rethrow as DataStorageException: Failed to list records in dataset: Account

简化政策:

{
  "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。仍在努力使其发挥作用。

谢谢!

刚刚在具有 Windows 7 的虚拟机上进行了测试,相同的项目/设置并且它有效。

我在 mac 上重复了测试,结果成功了。

尚不确定问题所在,但在 Windows 中打开同一个项目,然后在 Mac 中再次使用 v1.0.1 aws Unity SDK 工作。也许是统一缓存或类似问题的问题。但它正在工作。

谢谢!