Procházet zdrojové kódy

add 权限体系请求头

18339543638 před 3 roky
rodič
revize
e19dc61895

+ 34 - 0
nb-common/config-common/src/main/java/com/nb/common/config/web/handler/LoginTypeHandler.java

@@ -0,0 +1,34 @@
+package com.nb.common.config.web.handler;
+
+import com.nb.auth.bean.LoginUser;
+import com.nb.auth.utils.SecurityUtil;
+import com.nb.core.exception.RequestParmErrorException;
+import com.nb.core.exception.RequestSignErrorException;
+import org.springframework.core.annotation.Order;
+import org.springframework.stereotype.Component;
+import org.springframework.web.servlet.HandlerInterceptor;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName LoginTypeHandler.java
+ * @Description 权限体系认证请求头
+ * @createTime 2022年04月19日 14:22:00
+ */
+@Component
+@Order(999)
+public class LoginTypeHandler implements HandlerInterceptor {
+    @Override
+    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler){
+        LoginUser loginUser = SecurityUtil.getLoginUser();
+        String header = request.getHeader("Login-Type");
+        if(header==null){
+            //未登录且未带 Tenant-Id 请求头
+            throw new RequestParmErrorException();
+        }
+        return true;
+    }
+}

+ 1 - 1
nb-core/src/main/java/com/nb/core/result/ResultCode.java

@@ -72,7 +72,7 @@ public enum ResultCode implements IResultCode {
     /**
      * 缺少必要的请求参数
      */
-    PARAM_MISS(HttpServletResponse.SC_BAD_REQUEST, "请检查Timestamp、Sign、Authorization参数是否完整"),
+    PARAM_MISS(HttpServletResponse.SC_BAD_REQUEST, "请检查Timestamp、Sign、Authorization、Login-Type参数是否完整"),
 
     /**
      * 请求参数类型错误