Github user kotarot commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/3110#discussion_r230637063
  
    --- Diff: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/queue/clustered/server/ClusterLoadBalanceAuthorizer.java
 ---
    @@ -57,11 +79,35 @@ public String authorize(final Collection<String> 
clientIdentities) throws NotAut
                 }
             }
     
    -        final String message = String.format("Authorization failed for 
Client ID's %s to Load Balance data because none of the ID's are known Cluster 
Node Identifiers",
    -                clientIdentities);
    +        // If there are no matches of Client IDs, try to verify it by 
HostnameVerifier. In this way, we can support wildcard certificates.
    +        for (final String nodeId : nodeIds) {
    +            if (hostnameVerifier.verify(nodeId, sslSession)) {
    +                final String clientId = 
sslSocket.getInetAddress().getHostName();
    +                logger.debug("The request was verified with node '{}'. The 
hostname derived from the socket is '{}'. Authorizing Client to Load Balance 
data", nodeId, clientId);
    +                return clientId;
    +            }
    +        }
    +
    +        final String message = String.format("Authorization failed for 
Client ID's to Load Balance data because none of the ID's are known Cluster 
Node Identifiers");
    --- End diff --
    
    Thanks for pointing it out. I fixed it by just removing `String.format` in 
this line because the next line also uses the `message` variable.


---

Reply via email to