PTL_USER SafeDB 암호화 적용 / 포탈 사용자 마스킹 처리 해제

Update Hibernate configuration and enhance user management features

- Added Hibernate type tracing for improved debugging.
- Introduced new error messages for SafeDB operations in LocaleMessage properties.
- Updated portal user management to default to unmasked state.
- Refactored selectDetail method to handle masking option.
This commit is contained in:
Rinjae
2025-09-23 17:51:15 +09:00
parent ff856bbe28
commit d6fd6800ed
8 changed files with 2673 additions and 2656 deletions
@@ -11,6 +11,7 @@ public class PortalUserUISearch {
private String searchUserId;
private String searchUserName;
private String searchOrgId;
private String searchOrgName;
private String searchEmailAddr;
private String searchMobileNumber;
private String searchRoleCode;
@@ -47,12 +47,13 @@ public class PortalUserManController extends BaseAnnotationController {
return ResponseEntity.ok(new GridResponse<>(page));
}
// 2025.09.23 : 마스킹 해제를 기본상태로 변경 / Rinjae
/* 마스킹 처리된 값
* 수정버튼 비활성화. -> "마스킹해제" 버튼 클릭후 언마스크
* */
@PostMapping(value = "/onl/apim/portaluser/portalUserMan.json", params = "cmd=DETAIL")
public ResponseEntity<PortalUserUI> selectDetail(String id) {
PortalUserUI portalUserUI = portalUserManService.selectDetail(id);
PortalUserUI portalUserUI = portalUserManService.selectDetail(id, false);
return ResponseEntity.ok(portalUserUI);
}
@@ -61,7 +62,7 @@ public class PortalUserManController extends BaseAnnotationController {
if (StringUtils.isBlank(reason)) {
throw new BizException("마스킹 해제 사유를 입력해 주세요.");
}
PortalUserUI portalUserUI = portalUserManService.selectDetailUnmask(id);
PortalUserUI portalUserUI = portalUserManService.selectDetail(id, false);
return ResponseEntity.ok(portalUserUI);
}
@@ -17,6 +17,7 @@ import com.eactive.eai.rms.onl.apim.masking.MaskingUtils;
import com.eactive.eai.rms.onl.apim.portalorg.PortalOrgManService;
import com.eactive.eai.rms.onl.common.exception.BizException;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
@@ -31,6 +32,7 @@ import java.util.List;
@Service
@Transactional(transactionManager = "transactionManagerForEMS")
@RequiredArgsConstructor
@Slf4j
public class PortalUserManService extends BaseService {
private final PortalUserService portalUserService;
@@ -45,7 +47,8 @@ public class PortalUserManService extends BaseService {
public Page<PortalUserUI> selectList(Pageable pageable, PortalUserUISearch portalUserUISearch) {
Page<PortalUser> portalUser = portalUserService.findAll(pageable, portalUserUISearch);
return portalUser.map(entity -> {
PortalUserUI ui = convertToUIWithMaskOption(entity, true);
PortalUserUI ui = convertToUIWithMaskOption(entity, false);
if (entity.getPortalOrg() != null) {
setPortalOrgUI(entity, ui);
}
@@ -53,9 +56,10 @@ public class PortalUserManService extends BaseService {
});
}
public PortalUserUI selectDetail(String id) {
public PortalUserUI selectDetail(String id, boolean isMasked) {
PortalUser portalUser = portalUserService.getById(id);
PortalUserUI portalUserUI = convertToUIWithMaskOption(portalUser, true);
PortalUserUI portalUserUI = convertToUIWithMaskOption(portalUser, isMasked);
if (portalUser.getPortalOrg() != null) {
setPortalOrgUI(portalUser, portalUserUI);
}
@@ -63,12 +67,7 @@ public class PortalUserManService extends BaseService {
}
public PortalUserUI selectDetailUnmask(String id) {
PortalUser portalUser = portalUserService.getById(id);
PortalUserUI portalUserUI = convertToUIWithMaskOption(portalUser, false);
if (portalUser.getPortalOrg() != null) {
setPortalOrgUI(portalUser, portalUserUI);
}
return portalUserUI;
return selectDetail(id, false);
}
private void setPortalOrgUI(PortalUser portalUser, PortalUserUI portalUserUI) {
@@ -2596,4 +2596,8 @@ auditLogMan.parameters = Parameters
auditLogMan.remoteAddress = Remote Address
auditLogMan.systemCode = System Code
auditLogMan.title = Search Audit Log
auditLogMan.userId = User ID
auditLogMan.userId = User ID
safeDB.decryptError = SafeDB Decrypt Error
safeDB.encryptError = SafeDB Encrypt Error
File diff suppressed because it is too large Load Diff