Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MaxKey单点登录官方(MaxKeyTop)
MaxKey
提交
b462b7f3
MaxKey
项目概览
MaxKey单点登录官方(MaxKeyTop)
/
MaxKey
9 个月 前同步成功
通知
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 搜索 >>
提交
b462b7f3
编写于
12月 01, 2022
作者:
M
MaxKey
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
log trace
上级
8bcb4c75
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
36 addition
and
4 deletion
+36
-4
maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/RedisSessionManager.java
...in/java/org/maxkey/authn/session/RedisSessionManager.java
+5
-0
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnection.java
...in/java/org/maxkey/persistence/redis/RedisConnection.java
+6
-0
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnectionFactory.java
.../org/maxkey/persistence/redis/RedisConnectionFactory.java
+17
-3
maxkey-protocols/maxkey-protocol-cas/src/main/java/org/maxkey/authz/cas/endpoint/CasAuthorizeEndpoint.java
...a/org/maxkey/authz/cas/endpoint/CasAuthorizeEndpoint.java
+8
-1
未找到文件。
maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/RedisSessionManager.java
浏览文件 @
b462b7f3
...
...
@@ -64,10 +64,15 @@ public class RedisSessionManager implements SessionManager {
@Override
public
void
create
(
String
sessionId
,
Session
session
)
{
_logger
.
debug
(
"store session key {} ."
,
sessionId
);
session
.
setExpiredTime
(
session
.
getLastAccessTime
().
plusSeconds
(
validitySeconds
));
RedisConnection
conn
=
connectionFactory
.
getConnection
();
_logger
.
trace
(
"store session {} ..."
,
sessionId
);
conn
.
setexObject
(
getKey
(
sessionId
),
validitySeconds
,
session
);
_logger
.
debug
(
"store session {} successful ."
,
sessionId
);
_logger
.
trace
(
"close conn ..."
);
conn
.
close
();
_logger
.
trace
(
"close conn successful ."
);
}
@Override
...
...
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnection.java
浏览文件 @
b462b7f3
...
...
@@ -79,11 +79,13 @@ public class RedisConnection {
* @param value
*/
public
void
setex
(
String
key
,
long
seconds
,
String
value
){
_logger
.
trace
(
"setex key {} ..."
,
key
);
if
(
seconds
==
0
){
conn
.
setex
(
key
,
RedisConnectionFactory
.
DEFAULT_CONFIG
.
DEFAULT_LIFETIME
,
value
);
}
else
{
conn
.
setex
(
key
,
seconds
,
value
);
}
_logger
.
trace
(
"setex successful ."
);
}
...
...
@@ -92,6 +94,7 @@ public class RedisConnection {
* @return String
*/
public
String
get
(
String
key
){
_logger
.
trace
(
"get key {} ..."
,
key
);
String
value
=
null
;
if
(
key
!=
null
){
value
=
conn
.
get
(
key
);
...
...
@@ -115,16 +118,19 @@ public class RedisConnection {
}
public
void
expire
(
String
key
,
long
seconds
){
_logger
.
trace
(
"expire key {} , {}"
,
key
,
seconds
);
conn
.
expire
(
key
,
seconds
);
}
public
void
delete
(
String
key
){
_logger
.
trace
(
"del key {}"
,
key
);
conn
.
del
(
key
);
}
public
void
rPush
(
String
key
,
Serializable
object
){
conn
.
rpush
(
key
,
ObjectTransformer
.
serialize
(
object
));
}
public
long
lRem
(
String
key
,
int
count
,
String
value
){
return
conn
.
lrem
(
key
,
count
,
value
);
}
...
...
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnectionFactory.java
浏览文件 @
b462b7f3
...
...
@@ -17,12 +17,16 @@
package
org.maxkey.persistence.redis
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
redis.clients.jedis.Jedis
;
import
redis.clients.jedis.JedisPool
;
import
redis.clients.jedis.JedisPoolConfig
;
public
class
RedisConnectionFactory
{
private
static
final
Logger
_logger
=
LoggerFactory
.
getLogger
(
RedisConnectionFactory
.
class
);
public
static
class
DEFAULT_CONFIG
{
/**
* Redis默认服务器IP
...
...
@@ -79,6 +83,7 @@ public class RedisConnectionFactory {
public
void
initConnectionFactory
()
{
if
(
jedisPool
==
null
)
{
_logger
.
debug
(
"init Jedis Pool ."
);
try
{
if
(
this
.
hostName
==
null
||
hostName
.
equals
(
""
))
{
hostName
=
DEFAULT_CONFIG
.
DEFAULT_ADDRESS
;
...
...
@@ -94,26 +99,35 @@ public class RedisConnectionFactory {
this
.
password
=
null
;
}
jedisPool
=
new
JedisPool
(
poolConfig
,
hostName
,
port
,
timeOut
,
password
);
_logger
.
debug
(
"init Jedis Pool successful ."
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
_logger
.
error
(
"Exception"
,
e
);
}
}
}
public
synchronized
RedisConnection
getConnection
()
{
initConnectionFactory
();
_logger
.
trace
(
"get connection ."
);
RedisConnection
redisConnection
=
new
RedisConnection
(
this
);
_logger
.
trace
(
"return connection ."
);
return
redisConnection
;
}
public
Jedis
open
()
{
return
jedisPool
.
getResource
();
_logger
.
trace
(
"get jedisPool Resource ..."
);
Jedis
jedis
=
jedisPool
.
getResource
();
_logger
.
trace
(
"return jedisPool Resource ."
);
return
jedis
;
}
public
void
close
(
Jedis
conn
)
{
// jedisPool.returnResource(conn);
_logger
.
trace
(
"close conn ."
);
conn
.
close
();
_logger
.
trace
(
"closed conn ."
);
}
...
...
maxkey-protocols/maxkey-protocol-cas/src/main/java/org/maxkey/authz/cas/endpoint/CasAuthorizeEndpoint.java
浏览文件 @
b462b7f3
...
...
@@ -122,8 +122,10 @@ public class CasAuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
AppsCasDetails
casDetails
=
(
AppsCasDetails
)
WebContext
.
getAttribute
(
CasConstants
.
PARAMETER
.
ENDPOINT_CAS_DETAILS
);
ServiceTicketImpl
serviceTicket
=
new
ServiceTicketImpl
(
AuthorizationUtils
.
getAuthentication
(),
casDetails
);
_logger
.
trace
(
"CAS start create ticket ... "
);
String
ticket
=
ticketServices
.
createTicket
(
serviceTicket
,
casDetails
.
getExpires
());
_logger
.
trace
(
"CAS ticket {} created . "
,
ticket
);
StringBuffer
callbackUrl
=
new
StringBuffer
(
casDetails
.
getCallbackUrl
());
if
(
casDetails
.
getCallbackUrl
().
indexOf
(
"?"
)==-
1
)
{
...
...
@@ -153,12 +155,17 @@ public class CasAuthorizeEndpoint extends CasBaseAuthorizeEndpoint{
}
if
(
casDetails
.
getLogoutType
()==
LogoutType
.
BACK_CHANNEL
)
{
_logger
.
debug
(
"CAS LogoutType BACK_CHANNEL ... "
);
String
sessionId
=
AuthorizationUtils
.
getPrincipal
().
getSession
().
getId
();
_logger
.
trace
(
"get session by id {} . "
,
sessionId
);
Session
session
=
sessionManager
.
get
(
sessionId
);
_logger
.
trace
(
"current session {} "
,
session
);
//set cas ticket as OnlineTicketId
casDetails
.
setOnlineTicket
(
ticket
);
session
.
setAuthorizedApp
(
casDetails
);
_logger
.
trace
(
"session store ticket {} ."
,
ticket
);
sessionManager
.
create
(
sessionId
,
session
);
_logger
.
debug
(
"CAS LogoutType session store ticket to AuthorizedApp ."
);
}
_logger
.
debug
(
"redirect to CAS Client URL {}"
,
callbackUrl
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录