From 793171b3da60db6b109b23e586c1b8160a988480 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Fri, 24 Nov 2023 19:04:55 +0300 Subject: [PATCH] =?UTF-8?q?security-util=20UserRoleVerification=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20=D0=BB=D0=BE=D0=B3?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../util/security/UserRoleVerification.java | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/clearing-parent/security-util/src/main/java/ru/spcex/clearing/util/security/UserRoleVerification.java b/clearing-parent/security-util/src/main/java/ru/spcex/clearing/util/security/UserRoleVerification.java index 4141b7725..f76c116ba 100644 --- a/clearing-parent/security-util/src/main/java/ru/spcex/clearing/util/security/UserRoleVerification.java +++ b/clearing-parent/security-util/src/main/java/ru/spcex/clearing/util/security/UserRoleVerification.java @@ -77,26 +77,32 @@ public class UserRoleVerification { public void validateRoleAndThrow(BaseRequest req) throws ValidationException { Objects.requireNonNull(roleForVerification); Long requesterId = req.getUserId(); - if (requesterId != null && !userHasRole(requesterId, roleForVerification)) { - log.trace("User {} has no role to allow this action", requesterId); - throw new ValidationException(roleVerificationError); - } else { + if (requesterId == null) { log.trace("Request without userId"); + } else { + if (!userHasRole(requesterId, roleForVerification)) { + log.trace("User {} has no role to allow this action", requesterId); + throw new ValidationException(roleVerificationError); + } } } public RequestInfoUpdate validateRoleAndGetResult(BaseRequest req) { Objects.requireNonNull(roleForVerification); Long requesterId = req.getUserId(); - if (requesterId != null && !userHasRole(requesterId, roleForVerification)) { - String errMsg = messageResolver.resolve(new EnumMessage(roleVerificationError, requesterId)); - log.info("User {} has no role: {}", requesterId, errMsg); - return new RequestInfoUpdate() - .setId(req.getId()) - .setStatus(ru.spcex.clearing.platform.messaging.service.Status.Error) - .setMessage(errMsg); - } else { + if (requesterId == null) { log.debug("Request without userId"); + } else { + if (!userHasRole(requesterId, roleForVerification)) { + String errMsg = messageResolver.resolve(new EnumMessage(roleVerificationError, requesterId)); + log.info("User {} has no role: {}", requesterId, errMsg); + return new RequestInfoUpdate() + .setId(req.getId()) + .setStatus(ru.spcex.clearing.platform.messaging.service.Status.Error) + .setMessage(errMsg); + } else { + log.trace("Request validateRoleAndGetResult for userId={} success", requesterId); + } } return null; }