Cloudfunction /无服务器OAuth2客户端

时间:2019-10-19 20:15:10

标签: oauth oauth-2.0 google-cloud-functions serverless

我是OAuth2和云功能/无服务器新手。

所以我想知道创建云函数来处理OAuth2请求是否有意义。

我的想法:

  1. 用户向和API网关发送身份验证请求(据我所知,是为了防止云功能滥用,还是应该防止其他情况发生?Cloudflare?)
  2. 网关将请求重定向到云功能
  3. 云功能将用户身份验证存储在数据库中
  4. 用户现在已通过身份验证。
  5. 经过身份验证的用户现在可以通过其他云功能请求实际数据,例如配置文件。
  6. 用数据响应用户。

这是对OAuth工作原理的正确理解吗?如果是这样,这是否有意义,或者使用普通服务器处理OAuth便宜吗?

1 个答案:

答案 0 :(得分:0)

是的,您所描述的应该有效。请注意,您将需要secure your Cloud functions,并且除了OAuth之外,别忘了配置功能对功能的授权层(据我所知,您将使用更多的Cloud Functions)。我认为这个过程可能很麻烦,因为您需要为每个功能进行配置。 Here,您可以找到有关它的更多详细信息。

尽管,您所描述的内容应该起作用,但我个人而言,我不会实现该功能,因此我会选择Ambassador architecture并在其上运行服务的 假设Cloud Run 也包括安全层。由于某些原因,我不会选择您的架构计划:

1)我认为配置起来会更加复杂,主要是因为我之前在说什么。

2)即使有可能并且人们可以这样做,但我一般不会使用Cloud Functions来查询数据库,因为这是一个过程,可能需要一些时间,并且在某些特定情况下您的Cloud Function可能会超时。 (也许在那一刻,如果有很多正在连接到您的数据库的连接,可能会导致高延迟)。

3)在像这样的“链”系统中,维护和调试可能会有些困难。

4)我认为,在流量非常高的情况下,基于云功能的架构可能会更昂贵。您可以使用Pricing Calculator进行检查。

在脑震荡中,我认为它会起作用,但我不会这样做。

相关问题