MaxKey vor 2 Jahren
Ursprung
Commit
b462b7f3aa

+ 5 - 0
maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/RedisSessionManager.java

@@ -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

+ 6 - 0
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnection.java

@@ -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);
 	}

+ 17 - 3
maxkey-core/src/main/java/org/maxkey/persistence/redis/RedisConnectionFactory.java

@@ -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 .");
     }
 
    

+ 8 - 1
maxkey-protocols/maxkey-protocol-cas/src/main/java/org/maxkey/authz/cas/endpoint/CasAuthorizeEndpoint.java

@@ -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);