带有Firebase函数的OAuth 2.0流

带有Firebase函数的OAuth 2.0流,firebase,oauth-2.0,google-cloud-functions,Firebase,Oauth 2.0,Google Cloud Functions,如何使用Firebase函数成功连接到OAuth 2.0应用程序(例如:)?我发现最接近的是这个,但它不会保存访问令牌以备将来使用 我如何: 还记得不同Firestore函数的状态(用于防止请求伪造攻击的随机字符串)吗,这样我就可以确定它是否保持不变了 将访问令牌与授权我的用户关联(理想情况下将令牌保存在Firestore中) 有没有一个库可以为我完成所有这些,它可以从Firebase函数中工作?让您将OAuth 2.0连接到云函数,实际上,您提供的文档将是实现这一点的官方文档。我理解你的观点,

如何使用Firebase函数成功连接到OAuth 2.0应用程序(例如:)?我发现最接近的是这个,但它不会保存访问令牌以备将来使用

我如何:

  • 还记得不同Firestore函数的状态(用于防止请求伪造攻击的随机字符串)吗,这样我就可以确定它是否保持不变了
  • 将访问令牌与授权我的用户关联(理想情况下将令牌保存在Firestore中)

  • 有没有一个库可以为我完成所有这些,它可以从Firebase函数中工作?

    让您将OAuth 2.0连接到云函数,实际上,您提供的文档将是实现这一点的官方文档。我理解你的观点,关于你的问题,记住状态并将令牌与访问相关联,这实际上是非常有帮助的

    为了回答你的问题,没有一个图书馆可以为你做所有这些。四处搜索,您似乎可以使用JWT令牌,它将为您提供一些预定义字段的选项,这可能有助于您更好地控制过期时间、令牌的目标用户等。如果您对它感兴趣,这里有一个关于如何将其与云功能一起使用的好文档:

    不幸的是,除此之外,你似乎没有其他选择。出于这个原因,我建议您也在中提出一个特性请求,这样他们就可以考虑在将来改变/改进OAuth 2.0与云函数的工作方式的可能性


    如果这些信息对你有帮助,请告诉我

    我遵循了来自的许多说明。以下是我为子孙后代提出的最初问题的答案:

  • (记住状态)在客户端生成并保存到某个地方(我使用了localStorage)。将状态传递给Firebase函数,该函数生成授权url并将其返回给客户端
  • (保存访问令牌)授权后,我重定向回客户端(与Firebase函数相反)。我从客户端解析身份验证代码并检查状态是否匹配。我将授权代码传递给Firebase函数,以配置对最终访问令牌的请求。由于我从客户端调用了该函数,因此我可以访问
    上下文
    参数,该参数告诉我与访问令牌关联的
    uid

  • 如果你认为我的答案帮助了你,请考虑一下投票,接受它,谢谢你的回答。这有助于解决Cookie不再跨站点的问题(生成状态的函数)