|
|
@@ -5,28 +5,51 @@
|
|
|
|
|
|
package com.inspur.idm.platform.filter;
|
|
|
|
|
|
-import com.inspur.idm.platform.comm.BaseCodeError;
|
|
|
+import com.inspur.idm.media.comm.AdminError;
|
|
|
+import com.inspur.idm.media.util.MyUserUtil;
|
|
|
+import com.inspur.idm.platform.comm.BasePageListObj;
|
|
|
import com.inspur.idm.platform.comm.CodeException;
|
|
|
-import com.inspur.idm.platform.utils.ServerAuthUtils;
|
|
|
-/*import com.inspur.pub.AuthenticateUtil;*/
|
|
|
-import java.io.IOException;
|
|
|
-import java.io.PrintWriter;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.web.filter.OncePerRequestFilter;
|
|
|
+
|
|
|
import javax.servlet.FilterChain;
|
|
|
import javax.servlet.ServletException;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.web.filter.OncePerRequestFilter;
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.PrintWriter;
|
|
|
|
|
|
public class ServiceAuthFilter extends OncePerRequestFilter {
|
|
|
private static final Logger log = LoggerFactory.getLogger(ServiceAuthFilter.class);
|
|
|
private static final long SERVER_START_TIME = System.currentTimeMillis();
|
|
|
|
|
|
+ public static final String AUTHORITYS_PATH = "/sys/authoritys";
|
|
|
+
|
|
|
+ public static final String ORGANS_PATH = "/sys/organs";
|
|
|
+
|
|
|
+ public static final String LOGS_PATH = "/sys/logs";
|
|
|
+
|
|
|
+ public static final String CONFIGS_PATH = "/pub/configs";
|
|
|
+
|
|
|
+ public static final String DICTS_PATH = "/sys/dicts-manage";
|
|
|
+
|
|
|
public ServiceAuthFilter() {
|
|
|
}
|
|
|
|
|
|
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
|
|
|
+ if (request.getServletPath().endsWith(AUTHORITYS_PATH) || request.getServletPath().endsWith(ORGANS_PATH)
|
|
|
+ || request.getServletPath().endsWith(LOGS_PATH) || request.getServletPath().endsWith(CONFIGS_PATH)
|
|
|
+ || request.getServletPath().endsWith(DICTS_PATH)) {
|
|
|
+ if(!(MyUserUtil.isSuperAdmin())) {
|
|
|
+ response.setCharacterEncoding("utf-8");
|
|
|
+ response.setContentType("application/json;charset=utf-8");
|
|
|
+ PrintWriter write = response.getWriter();
|
|
|
+ String msg = this.buildMessage(new CodeException(AdminError.REPAIR_NO_PERMISSION, new Object[0]));
|
|
|
+ write.print(msg);
|
|
|
+ write.flush();
|
|
|
+ }
|
|
|
+ }
|
|
|
filterChain.doFilter(request, response);
|
|
|
// String path = request.getServletPath();
|
|
|
// if (!"/service/info".equalsIgnoreCase(path) && !"/auth.html".equalsIgnoreCase(path)) {
|