首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用程序在AWS API网关上的认知认证

应用程序在AWS API网关上的认知认证
EN

Stack Overflow用户
提问于 2015-09-08 11:04:43
回答 2查看 4K关注 0票数 1

以下是我的用例-

我正在开发一个android应用程序。我正在尝试使用aws网关和它后面的lambda函数。但即使在登录之前,我也希望保护HTTP调用并验证我的应用程序。为此,我计划在API网关中使用认知。因此,首先,我的调用将转到认知,它将验证应用程序(而不是用户),然后我的调用将转到任何Lamda函数。我想将所有这些都包含在api网关的SDK中。

问题1-它甚至可以这样做(请参考一些文件或代码)

问题2-它是推荐的。还是有更好的方法来做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-08 13:45:18

是的,这是可能的,我认为这是正确的方法。您可以使用Android来调用认知和身份验证,您可以配置为赋予返回的临时IAM帐户一个特定的角色,这个角色应该只具有调用API网关的权限。然后,您的客户端可以使用这些临时IAM凭据来使用生成的Android调用after (您可以在部署API之后从API网关控制台生成它)。您必须将API网关中的API端点配置为由IAM保护,并确保在需要跨域CORS支持的情况下在资源上创建选项方法。

  • 阅读有关科尼图:http://docs.aws.amazon.com/cognito/devguide/
  • 阅读API网关:http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started.html
票数 1
EN

Stack Overflow用户

发布于 2017-03-09 18:53:31

我知道这可能太迟了。但是对于有此问题的人,有两种方法可以根据场景保护API端点。

如果你目前没有一个用户目录(登录/注册系统),你可以使用认知用户池来保护你的应用程序。步骤如下

  1. 在AWS认知控制台中,创建一个认知用户池
  2. 在API网关控制台中,创建一个认知用户池授权器
  3. 在您的JS代码中,使用认知用户池对用户进行身份验证,它将返回一个用户令牌,然后在对api进行Ajax调用时,您可以在授权头中使用令牌。

下面是一个关于这个过程的一步步的教程。我建议从创建一个认知用户池一章开始。

http://serverless-stack.com/chapters/create-a-cognito-user-pool.html

第二种情况是,如果您已经有了一个用户目录,可以使用Facebook/Twitter或任何其他社交登录。您将需要创建一个认知身份池。您可能会发现这个回答很有用。

要使用联邦身份,您可以将API方法设置为使用“AWS_IAM”授权。您可以使用认知创建一个角色,并将其与您的认知身份池相关联。然后使用标识和访问管理(IAM)服务授予此角色权限,以调用您的API网关方法。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32456124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档