我正在寻找避免创建ec2 instance
的方法,以便具有有效的回调URL来执行OAuth握手。
我计划使用Lambda
连接到远程API
,但是我需要先获取令牌,这仅在6小时内有效。
有什么办法可以通过Lambda
函数进行握手?
我认为Lambda
与API Gateway
一起提供了一个很好的解决方案。API网关允许您创建一个持久,可公开访问的HTTP端点。您可以将映射http方法映射到lambda函数调用的特定"资源"。
我并不特别熟悉Oauth 2,但是我想象的是这样的东西:在API网关中,使用调用您的lambda功能的GET方法定义资源"/回调"。
注册API网关端点为您的应用程序的回调URI,看起来像这样:
https://c1bql2cdxy.execute-api.us-east-1.amazonaws.com/callback
通过这样做,远程服务将调用您的lambda函数,然后可以从请求中读取授权令牌并使用该功能,但是是否涉及1)将令牌存储在数据库中以备将来使用(并重复使用)通过其他服务,2)直接调用同一lambda功能中的服务等。