使用 Json 网络令牌与 Flask-Oauthlib
Using Json Web Tokens with Flask-Oauthlib
对于一个客户端项目,我正在开发一个使用 Flask 作为后端的 Web 应用程序。
所以我决定使用 Flask-oauthlib 来尝试简化提供刷新令牌和撤销访问令牌的过程。但是,有些事情我仍然很难理解。
编写 oauth 服务器时,如何让它生成并提供 JSON Web 令牌而不是使用默认的 access/refresh 令牌?
我还想知道的另一件事是如何从 http 请求中验证 JSON Web 令牌?
如有任何建议,我们将不胜感激。
我是 Flask-OAuthlib 的作者。用这个库很难实现这样的事情。我创建了一个新库 Authlib。有了这个库,就可以很容易地像您描述的那样创建一个 OAuth 服务器。
Authlib 本身包含 JWT。首先,了解如何在 https://docs.authlib.org/en/latest/specs/rfc7519.html
上创建 JWT 和验证 JWT
对于生成访问令牌和刷新令牌,您可以配置它
OAUTH2_ACCESS_TOKEN_GENERATOR
和 OAUTH2_REFRESH_TOKEN_GENERATOR
如 https://docs.authlib.org/en/latest/flask/oauth2.html#define-server
所述
对于一个客户端项目,我正在开发一个使用 Flask 作为后端的 Web 应用程序。
所以我决定使用 Flask-oauthlib 来尝试简化提供刷新令牌和撤销访问令牌的过程。但是,有些事情我仍然很难理解。
编写 oauth 服务器时,如何让它生成并提供 JSON Web 令牌而不是使用默认的 access/refresh 令牌?
我还想知道的另一件事是如何从 http 请求中验证 JSON Web 令牌?
如有任何建议,我们将不胜感激。
我是 Flask-OAuthlib 的作者。用这个库很难实现这样的事情。我创建了一个新库 Authlib。有了这个库,就可以很容易地像您描述的那样创建一个 OAuth 服务器。
Authlib 本身包含 JWT。首先,了解如何在 https://docs.authlib.org/en/latest/specs/rfc7519.html
上创建 JWT 和验证 JWT对于生成访问令牌和刷新令牌,您可以配置它
OAUTH2_ACCESS_TOKEN_GENERATOR
和 OAUTH2_REFRESH_TOKEN_GENERATOR
如 https://docs.authlib.org/en/latest/flask/oauth2.html#define-server