Spring Oauth JWT - 刷新令牌

德普萨

因此,我使用 JWT 令牌实现了 Spring Oauth2 安全性。

我可以得到 JWT,access_tokensrefresh_token用法是我不完全理解的。我可以使用refresh_token来获取 newaccess_token和 new refresh_token

当我想refresh_token再次使用新的时,我收到错误消息,指出此令牌无效。如果我使用旧的,refresh_token那么我会得到例外DuplicateKeyException, PreparedStatementCallback; SQL [insert into oauth_access_token (token_id, token, authentication_id, user_name, client_id, authentication, refresh_token) values (?, ?, ?, ?, ?, ?, ?)]; ERROR: duplicate key value violates unique constraint "oauth_access_token_pkey"

这是oauth_access_token表的DDL

CREATE TABLE oauth_access_token (
    token_id varchar(510) NULL DEFAULT NULL::character varying,
    token bytea NULL,
    authentication_id varchar(510) NOT NULL,
    user_name varchar(510) NULL DEFAULT NULL::character varying,
    client_id varchar(510) NULL DEFAULT NULL::character varying,
    authentication bytea NULL,
    refresh_token varchar(510) NULL DEFAULT NULL::character varying,
    CONSTRAINT oauth_access_token_pkey PRIMARY KEY (authentication_id)
)
WITH (
    OIDS=FALSE
);

如果我删除约束,oauth_access_token_pkey那么它工作正常,但是该表包含 N 个标记行,而不是 1,并且由于IncorrectResultSizeDataAccessException.

我应该怎么做才能使刷新令牌工作?

德普萨

我用 JwtTokenStore 而不是 JdbcTokenStore 解决了这个“问题”。JWT 令牌应该是无状态的,但我将它们存储在数据库中,这导致了问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring OAuth / JWT从访问令牌获得更多信息

来自分类Dev

Oauth2 有效令牌 JWT Spring

来自分类Dev

Spring OAuth2没有提供刷新令牌

来自分类Dev

使用Spring Security OAuth2的刷新令牌为null

来自分类Dev

角JWT刷新令牌

来自分类Dev

刷新过期的 JWT 令牌

来自分类Dev

如何在Spring OAuth中使用Redis令牌存储获取jwt令牌的解码详细信息

来自分类Dev

MSAL + OAUTH令牌刷新

来自分类Dev

如何使用Spring Boot Keycloak适配器+ Spring安全性强制OAuth令牌更新(访问令牌+刷新令牌)?

来自分类Dev

Spring Security OAuth-它可以使用Keycloak的JWT令牌吗

来自分类Dev

laravel / angularjs JWT令牌刷新

来自分类Dev

在MVC中使用OAuth承载令牌(JWT)

来自分类Dev

Oauth刷新令牌授予类型

来自分类Dev

Google OAuth 2.0刷新令牌

来自分类Dev

Azure AD OAuth 刷新令牌

来自分类Dev

spring-security-oauth2 2.0.7刷新令牌UserDetailsService配置-需要UserDetailsService

来自分类Dev

客户端机密+在Spring OAuth2中刷新访问令牌

来自分类Dev

Spring OAuth2 在发送刷新令牌时要求输入密码

来自分类Dev

OAuth访问令牌和刷新令牌创建

来自分类Dev

OAuth 2.0访问令牌和刷新令牌

来自分类Dev

OAuth访问令牌和刷新令牌创建

来自分类Dev

如何刷新的OAuth2令牌使用Spring Security 5 OAuth2用户端和RestTemplate

来自分类Dev

Firebase php-jwt令牌刷新

来自分类Dev

如何使用Redux刷新JWT令牌?

来自分类Dev

Nuxt.js + Auth(jwt刷新令牌)

来自分类Dev

Firebase php-jwt令牌刷新

来自分类Dev

如何使用Spring Security 5和OAuth2 Client获取刷新令牌并进行API调用?

来自分类Dev

当授权服务器没有访问或刷新令牌时,Spring OAuth2Sso 仍然可以登录用户

来自分类Dev

如何保留OAuth 2刷新令牌

Related 相关文章

热门标签

归档