gpt4 book ai didi

spring - 使用 facebook 登录并使用 oauth 2.0 对 REST api 调用进行身份验证

转载 作者:行者123 更新时间:2023-12-02 05:40:22 25 4
gpt4 key购买 nike

我在我的 api 中使用 spring 框架和 REST architecutre。目前,我通过在每次调用时发送用户名和密码来验证我的 REST 调用。用户存储在我的数据库中。

现在我计划使用 oauth 2.0 来访问我的 protected 资源,并且我计划使用 Facebook Login 作为身份验证机制。

我已经阅读了有关 spring-security-oauth2 的内容,并在一个小示例中实现了它,它工作得很好。

我已经阅读了有关 spring-social 的内容,也已经实现了它并且可以访问 facebook api。

现在我想知道的是如何使用 facebook 登录,然后使用 oauth 2.0 来保护我的资源。

任何帮助将不胜感激。

最佳答案

您不想使用 Facebook 颁发的访问 token 来保护您自己的资源。 Facebook token 代表您的应用程序、Facebook 和您的用户之间的三向协议(protocol)。如果您想使用 OAuth 来保护您自己的资源,那么这些资源的使用者、您的服务器以及在您的服务器上拥有这些资源的用户之间就需要达成完全不同的协议(protocol)。

这样想:当您使用 Facebook 的 API 时,您的应用程序 (A) 是消费者,Facebook (FB) 是提供者,并且有一个公共(public)用户 (U1) 将它们连接在一起。但是,当有人消耗您服务器上的资源时,您的应用程序 (A) 充当提供者的角色,其他某个应用程序 (X) 充当使用者,并且有一个公共(public)用户 (U2) 将这些应用程序连接在一起。在这两种情况下,可能是同一个人(例如,U1 == U2)同意这种安排,但提供者和消费者的角色已经改变。

我想可能有一种方法可以让 Spring Security for OAuth 颁发与 Facebook 颁发的相同的访问 token ,但这并不是一个好主意。

关于spring - 使用 facebook 登录并使用 oauth 2.0 对 REST api 调用进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14839183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com