我正在使用Unity开发移动应用程序游戏,我目前正在为Cognito Sync实施AWS NET SDK,以允许玩家将他们的保存数据保持在线,以防他们重新安装应用程序或切换手机。
我对Cognito Sync的安全性感到担心,因为它似乎只需要为其提供一个标识池ID,以便自动连接到Cognito Sync服务;我在文档中使用指南作为参考。
这令我担心,因为我可以想象,对于身份池ID的反向工程很容易,然后在流氓应用程序中使用它而不必支付托管费用,同时为我收到可能的巨额账单。
AWS Cognito是否有任何内置机制来阻止这种情况?如果没有,我将如何自行预防?
谢谢。
答案 0 :(得分:0)
在开始我的实际答案之前,我想澄清一件事。 Cognito Sync API是经过身份验证的API,只能使用Cognito Federated Identity服务的临时AWS凭证的有效开发人员AWS凭据进行调用。
您的身份池ID与Cognito Federated Identity服务一起使用以获取临时凭据。这些临时凭证将根据您生成的标识类型进行销售。经过身份验证的身份是首先使用受支持的身份验证提供程序之一然后获取凭据的身份。未经身份验证或访客身份直接与服务通信以获取临时凭证。与这些凭据关联的权限是从开发人员为标识池配置的相应角色派生的。
构建安全应用程序的推荐方法是确保您在应用程序中使用经过身份验证的身份。未经身份验证的角色只应在必要时用于授予只读访问权限。
我希望这是有道理的。您可以在我们的dev guide。
中详细了解这些概念