shp 파일생성 baseurl 설정 추가, 추론데이터 테이블 수정

This commit is contained in:
2025-12-30 15:12:10 +09:00
parent 412f4a0d5e
commit 03231775fd
6 changed files with 27 additions and 11 deletions

View File

@@ -1,13 +1,12 @@
package com.kamco.cd.kamcoback.auth;
import com.kamco.cd.kamcoback.common.enums.RoleType;
import com.kamco.cd.kamcoback.postgres.entity.MenuEntity;
import com.kamco.cd.kamcoback.postgres.repository.menu.MenuRepository;
import jakarta.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.function.Supplier;
import lombok.RequiredArgsConstructor;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.security.authorization.AuthorizationDecision;
import org.springframework.security.authorization.AuthorizationManager;
import org.springframework.security.core.Authentication;
@@ -24,8 +23,6 @@ import org.springframework.stereotype.Component;
@RequiredArgsConstructor
public class MenuAuthorizationManager implements AuthorizationManager<RequestAuthorizationContext> {
private static final Logger log = LogManager.getLogger(MenuAuthorizationManager.class);
private final MenuRepository menuAuthQueryRepository;
@Override
@@ -45,7 +42,7 @@ public class MenuAuthorizationManager implements AuthorizationManager<RequestAut
return new AuthorizationDecision(false);
}
boolean isAdmin = "ADMIN".equalsIgnoreCase(role);
boolean isAdmin = RoleType.ADMIN.getId().equalsIgnoreCase(role);
// URL별 권한 조회
List<MenuEntity> matchedMenus = menuAuthQueryRepository.findMenusByRequestPath(requestPath);
@@ -72,12 +69,12 @@ public class MenuAuthorizationManager implements AuthorizationManager<RequestAut
return new AuthorizationDecision(false);
}
// ✅ 3) 보호 URL이 아니면 ADMIN은 전부 허용
// ADMIN은 전부 허용
if (isAdmin) {
return new AuthorizationDecision(true);
}
// ✅ 4) 일반 role은 기존대로 매핑 기반
// 일반 role은 기존대로 매핑 기반
List<MenuEntity> allowedMenus = menuAuthQueryRepository.findAllowedMenuUrlsByRole(role);
if (allowedMenus == null || allowedMenus.isEmpty()) {
return new AuthorizationDecision(false);