mirror of
https://github.com/apache/rocketmq.git
synced 2026-08-30 18:10:44 +08:00
[ISSUE 8230] fix the acl for NotifyClientTerminationRequest because group can be null. (#8231)
This commit is contained in:
@@ -40,6 +40,7 @@ import java.util.Map;
|
||||
import java.util.SortedMap;
|
||||
import java.util.TreeMap;
|
||||
import org.apache.commons.codec.DecoderException;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.rocketmq.acl.AccessResource;
|
||||
import org.apache.rocketmq.acl.common.AclException;
|
||||
@@ -268,7 +269,9 @@ public class PlainAccessResource implements AccessResource {
|
||||
}
|
||||
} else if (NotifyClientTerminationRequest.getDescriptor().getFullName().equals(rpcFullName)) {
|
||||
NotifyClientTerminationRequest request = (NotifyClientTerminationRequest) messageV3;
|
||||
accessResource.addGroupResourceAndPerm(request.getGroup(), Permission.SUB);
|
||||
if (StringUtils.isNotBlank(request.getGroup().getName())) {
|
||||
accessResource.addGroupResourceAndPerm(request.getGroup(), Permission.SUB);
|
||||
}
|
||||
} else if (QueryRouteRequest.getDescriptor().getFullName().equals(rpcFullName)) {
|
||||
QueryRouteRequest request = (QueryRouteRequest) messageV3;
|
||||
accessResource.addResourceAndPerm(request.getTopic(), Permission.ANY);
|
||||
|
||||
+3
-1
@@ -129,7 +129,9 @@ public class DefaultAuthorizationContextBuilder implements AuthorizationContextB
|
||||
}
|
||||
if (message instanceof NotifyClientTerminationRequest) {
|
||||
NotifyClientTerminationRequest request = (NotifyClientTerminationRequest) message;
|
||||
result = newGroupSubContexts(metadata, request.getGroup());
|
||||
if (StringUtils.isNotBlank(request.getGroup().getName())) {
|
||||
result = newGroupSubContexts(metadata, request.getGroup());
|
||||
}
|
||||
}
|
||||
if (message instanceof ChangeInvisibleDurationRequest) {
|
||||
ChangeInvisibleDurationRequest request = (ChangeInvisibleDurationRequest) message;
|
||||
|
||||
Reference in New Issue
Block a user