我正在寻找避免创建ec2 instance
的方法,以便具有有效的回调URL来执行oauth握手。
我计划使用Lambda
连接到远程API
,但是我需要能够首先获取 token ,该 token 仅在6个小时内有效。
有什么办法可以通过Lambda
函数进行握手吗?
最佳答案
我认为Lambda
和API Gateway
提供了一个很好的解决方案。 API网关允许您创建一个持久的,可公开访问的HTTP端点。您可以定义将HTTP方法映射到lambda函数调用的特定“资源”。
我对OAuth 2并不是特别熟悉,但是我在想像这样的事情:在API Gateway中,使用调用Lambda函数的GET方法定义资源“/回调”。
将API网关端点注册为应用程序的回调URI,如下所示:
https://c1bql2cdxy.execute-api.us-east-1.amazonaws.com/callback
这样,远程服务将调用您的lambda函数,该函数然后可以从请求中读取授权 token 并根据需要使用它,无论是否涉及1)将 token 存储在数据库中,以供其他服务将来使用(和重用) ,2)直接调用同一Lambda函数中的服务,等等。
关于amazon-web-services - 是否可以使用AWS Lambda请求oauth 2.0 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41274708/