Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MaxKey单点登录官方(MaxKeyTop)
MaxKey
提交
3fe3d7f8
MaxKey
项目概览
MaxKey单点登录官方(MaxKeyTop)
/
MaxKey
8 个月 前同步成功
通知
75
Star
3
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
MaxKey
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
3fe3d7f8
编写于
3月 04, 2022
作者:
M
MaxKey
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
https://gitee.com/dromara/MaxKey
上级
7944b16b
85c0c2db
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
18 addition
and
9 deletion
+18
-9
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnection.java
...in/java/org/maxkey/persistence/redis/RedisConnection.java
+5
-0
maxkey-protocols/maxkey-protocol-oauth-2.0/src/main/java/org/maxkey/authz/oauth2/provider/token/store/RedisTokenStore.java
...ey/authz/oauth2/provider/token/store/RedisTokenStore.java
+13
-9
未找到文件。
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnection.java
浏览文件 @
3fe3d7f8
...
...
@@ -147,5 +147,10 @@ public class RedisConnection {
public
void
setConn
(
Jedis
conn
)
{
this
.
conn
=
conn
;
}
public
Pipeline
getPipeline
()
{
return
pipeline
;
}
}
maxkey-protocols/maxkey-protocol-oauth-2.0/src/main/java/org/maxkey/authz/oauth2/provider/token/store/RedisTokenStore.java
浏览文件 @
3fe3d7f8
...
...
@@ -35,6 +35,7 @@ import org.maxkey.util.ObjectTransformer;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.util.Date
;
/**
...
...
@@ -216,14 +217,15 @@ public class RedisTokenStore implements TokenStore {
RedisConnection
conn
=
getConnection
();
try
{
conn
.
openPipeline
();
conn
.
delete
(
accessKey
);
conn
.
delete
(
accessToRefreshKey
);
// Don't remove the refresh token - it's up to the caller to do that
conn
.
delete
(
authKey
);
conn
.
getPipeline
().
get
(
accessKey
);
conn
.
getPipeline
().
get
(
authKey
);
conn
.
getPipeline
().
del
(
accessKey
);
conn
.
getPipeline
().
del
(
accessToRefreshKey
);
//Don't remove the refresh token - it's up to the caller to do that
conn
.
getPipeline
().
del
(
authKey
);
List
<
Object
>
results
=
conn
.
closePipeline
();
String
access
=
(
String
)
results
.
get
(
0
);
String
auth
=
(
String
)
results
.
get
(
1
);
OAuth2Authentication
authentication
=
ObjectTransformer
.
deserialize
(
auth
);
if
(
authentication
!=
null
)
{
String
key
=
authenticationKeyGenerator
.
extractKey
(
authentication
);
...
...
@@ -251,6 +253,7 @@ public class RedisTokenStore implements TokenStore {
conn
.
openPipeline
();
conn
.
setObject
(
refreshKey
,
refreshToken
);
conn
.
setObject
(
refreshAuthKey
,
authentication
);
if
(
refreshToken
instanceof
ExpiringOAuth2RefreshToken
)
{
ExpiringOAuth2RefreshToken
expiringRefreshToken
=
(
ExpiringOAuth2RefreshToken
)
refreshToken
;
Date
expiration
=
expiringRefreshToken
.
getExpiration
();
...
...
@@ -314,8 +317,8 @@ public class RedisTokenStore implements TokenStore {
RedisConnection
conn
=
getConnection
();
try
{
conn
.
openPipeline
();
conn
.
get
(
key
);
conn
.
delete
(
key
);
conn
.
get
Pipeline
().
get
(
key
);
conn
.
getPipeline
().
del
(
key
);
results
=
conn
.
closePipeline
();
}
finally
{
conn
.
close
();
...
...
@@ -323,11 +326,12 @@ public class RedisTokenStore implements TokenStore {
if
(
results
==
null
)
{
return
;
}
String
bytes
=
(
String
)
results
.
get
(
0
);
String
accessToken
=
ObjectTransformer
.
deserialize
(
bytes
);
String
accessToken
=
(
String
)
results
.
get
(
0
);
//
String accessToken = ObjectTransformer.deserialize(bytes);
if
(
accessToken
!=
null
)
{
removeAccessToken
(
accessToken
);
}
}
@Override
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录