【问题标题】:amazon lambda permissions for browser浏览器的亚马逊 lambda 权限
【发布时间】:2016-06-06 22:27:11
【问题描述】:

我已经制作了一些返回 html 的 lambda 函数 - 并通过将内容类型设置为 text/html 的网关函数公开它们 - 以便我可以浏览它们。效果很好。

但是 - 我希望他们只为 me 使用我当前的环境 amazon 会话工作。如果我将它们公开-它们有效,但对所有人都有效。如果我打开 Iam 并在那里浏览,他们需要一个身份验证令牌。

有什么方法可以实现我想要的吗?

【问题讨论】:

  • “我当前的亚马逊环境会话” 没有任何有意义的事情。您的控制台会话只是一个控制台会话。服务端点对此“会话”没有意义,除非控制台为您签署 URL,例如当您使用控制台从存储桶下载 S3 对象时……但 S3 不知道该会话……仅它收到了一个特定的、有效的、签名的请求。
  • 嗯 - 这正是我想要的 - 我想使用控制台会话 - 但我猜你是说它不能完成?

标签: amazon-web-services lambda amazon-iam


【解决方案1】:

需要做一些事情。

  1. API Gateway 方法需要将 Auth 设置为 AWS_IAM。
  2. 确保您在 Lambda 函数的配置设置。
  3. 该角色需要有与您的关联的信任关系 用户。
  4. 确保您的用户的 IAM 密钥(应具有适当的 Lambda 权限)位于您计算机上的适当位置。

替补:

  1. 您也可以尝试在信任关系中使用 Cognito,以防止在您的计算机中对密钥进行硬编码。
  2. 此外,如果它仅供您自己使用,那么将 API 网关中的 Auth 设置为 none 并生成 API 密钥将起作用。如果您要在任何地方部署应用程序,请不要使用它。有人可以轻松地反编译代码并获得密钥。这应该纯粹是为了快速制作原型。

【讨论】:

  • 从根本上说,我想我假设最重要的限制是我不能在机器或浏览器上存储任何东西。本质上,我想要做的是构建一个类似于 wiki 的东西——我可以通过“登录”随时从任何浏览器或设备访问它。这完全是为了我自己的目的,而且将永远如此,我确实希望它是安全的。出于多种原因,我希望它在 lambda 上 - 其中最重要的是我要学习 lambda。
  • AWS Cognito 那时就可以工作了。在您对登录提供者进行身份验证后,它会发出持续几个小时的临时密钥。
猜你喜欢
  • 2010-10-20
  • 1970-01-01
  • 2016-09-16
  • 1970-01-01
  • 1970-01-01
  • 2021-06-02
  • 1970-01-01
  • 2016-10-02
相关资源
最近更新 更多