RockteMQ-AI commented on code in PR #2340:
URL: 
https://github.com/apache/rocketmq-dashboard/pull/2340#discussion_r3801315187


##########
server/src/main/java/org/apache/rocketmq/studio/cluster/proxy/ProxyAddressService.java:
##########
@@ -50,15 +51,25 @@ public class ProxyAddressService {
 
     private static final String RELOAD_PATH = "/admin/reloadConfig";
 
+    private final ClusterService clusterService;
     private final Set<String> proxyAddrs = new 
LinkedHashSet<>(List.of("127.0.0.1:8081"));
     private String currentProxyAddr = "127.0.0.1:8081";
     private final RestTemplate restTemplate;
 
-    public ProxyAddressService() {
+    public ProxyAddressService(ClusterService clusterService) {
+        this(clusterService, newRestTemplate());
+    }
+
+    ProxyAddressService(ClusterService clusterService, RestTemplate 
restTemplate) {
+        this.clusterService = clusterService;
+        this.restTemplate = restTemplate;

Review Comment:
   **[Info]** The `requireProxy` validation correctly throws a 
`BusinessException(404)` when the target is not in the cluster topology. This 
is a clean SSRF mitigation — the legacy `proxyAddrs` registry is preserved for 
backward-compatible address registration but can no longer authorize outbound 
reload requests.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to