Amazon web services 在AWS上使用Lambda创建内部API

Amazon web services 在AWS上使用Lambda创建内部API,amazon-web-services,lambda,aws-lambda,Amazon Web Services,Lambda,Aws Lambda,我想使用AWS Labmda+API网关构建一个无服务器系统,在这里我将有一些公共API和一些其他API仅供内部使用(所有这些都将使用Lambda函数和节点JS实现) 我的问题是如何创建那些不会暴露于外部世界而只暴露于少数lambda函数的内部api 我知道网关中定义的所有API都是公共的。我如何管理API的调用者,使其仅来自我自己认可的AWS资源(特别是我的Lambda函数) 我知道一个可能的答案是直接调用Lambda函数,而不是通过API网关。这当然会起作用,但缺点是它将实现与AWS结合起来

我想使用AWS Labmda+API网关构建一个无服务器系统,在这里我将有一些公共API和一些其他API仅供内部使用(所有这些都将使用Lambda函数和节点JS实现)

我的问题是如何创建那些不会暴露于外部世界而只暴露于少数lambda函数的内部api

我知道网关中定义的所有API都是公共的。我如何管理API的调用者,使其仅来自我自己认可的AWS资源(特别是我的Lambda函数)

我知道一个可能的答案是直接调用Lambda函数,而不是通过API网关。这当然会起作用,但缺点是它将实现与AWS结合起来,而我正试图获得一个解决方案,该解决方案由节点微服务构成,通过RESTAPI相互调用

谢谢。

如文件所述:

要为方法分配自定义访问权限,请在 “授权设置”区域,选择“编辑”作为“授权类型”,然后 然后选择AWS_IAM。只有具有正确IAM策略的IAM角色 附件将允许调用此方法


然后,您只需要为Lambda函数分配适当的IAM角色,以便允许它们调用这些私有API网关方法。

谢谢。通过更仔细地阅读本文,我发现将其作为一个直接的HTTPS请求并不是那么简单,因为如果不使用AWS SDK,则需要做大量的工作来验证请求(请参阅)。我希望AWS能在内部解决所有这些问题。我想一个内部API网关在这里对我来说可能非常有用(但不幸的是它并不存在)。使用这种方法,对于内部调用,仍然会产生成本。“你知道如何最大限度地降低成本吗?”哈默这个问题不是关于成本的。如果您有关于API网关成本的特定问题,请将其作为单独的问题提问。