以下是我的用例-
我正在开发一个android应用程序。我正在尝试使用aws网关和它后面的lambda函数。但即使在登录之前,我也希望保护HTTP调用并验证我的应用程序。为此,我计划在API网关中使用认知。因此,首先,我的调用将转到认知,它将验证应用程序(而不是用户),然后我的调用将转到任何Lamda函数。我想将所有这些都包含在api网关的SDK中。
问题1-它甚至可以这样做(请参考一些文件或代码)
问题2-它是推荐的。还是有更好的方法来做呢?
发布于 2015-09-08 13:45:18
是的,这是可能的,我认为这是正确的方法。您可以使用Android来调用认知和身份验证,您可以配置为赋予返回的临时IAM帐户一个特定的角色,这个角色应该只具有调用API网关的权限。然后,您的客户端可以使用这些临时IAM凭据来使用生成的Android调用after (您可以在部署API之后从API网关控制台生成它)。您必须将API网关中的API端点配置为由IAM保护,并确保在需要跨域CORS支持的情况下在资源上创建选项方法。
发布于 2017-03-09 18:53:31
我知道这可能太迟了。但是对于有此问题的人,有两种方法可以根据场景保护API端点。
如果你目前没有一个用户目录(登录/注册系统),你可以使用认知用户池来保护你的应用程序。步骤如下
下面是一个关于这个过程的一步步的教程。我建议从创建一个认知用户池一章开始。
http://serverless-stack.com/chapters/create-a-cognito-user-pool.html
第二种情况是,如果您已经有了一个用户目录,可以使用Facebook/Twitter或任何其他社交登录。您将需要创建一个认知身份池。您可能会发现这个回答很有用。
要使用联邦身份,您可以将API方法设置为使用“AWS_IAM”授权。您可以使用认知创建一个角色,并将其与您的认知身份池相关联。然后使用标识和访问管理(IAM)服务授予此角色权限,以调用您的API网关方法。
https://stackoverflow.com/questions/32456124
复制相似问题