Selaa lähdekoodia

fix 新增用户权限校验

zoujiajian 3 vuotta sitten
vanhempi
sitoutus
97e117b886

+ 8 - 0
netflix-web/src/main/java/com/cyksj/web/controller/manage/AdminController.java

@@ -85,6 +85,14 @@ public class AdminController {
 
     @PostMapping("/post")
     public Result<String> saveAdmin(@RequestBody @Validated Admin admin) throws Exception {
+        Long adminId = StpUserUtil.getLoginIdAsLong();
+        Admin exist = adminService.getById(adminId);
+        if (exist == null) {
+            throw BusinessRuntimeException.getInstance("账号不存在,请重新登录");
+        }
+        if (exist.getCategory() != Admin.Category.superoot) {
+            throw BusinessRuntimeException.getInstance("无超级管理员权限");
+        }
         if (StringUtils.isNotBlank(admin.getPassWord())) {
             admin.setPassWord(Codec.DoDigest.custom().setAlgorithm(Codec.DoDigest.Algorithm.SHA256).setStringData(admin.getPassWord()).toBase64String());
         }