[jboss-jira] [JBoss JIRA] (JGRP-2227) Use of AUTH does not result in a SecurityException, but instead nodes create separate clusters with the same name

Robert Cernak (JIRA) issues at jboss.org
Mon Jul 2 05:39:00 EDT 2018


    [ https://issues.jboss.org/browse/JGRP-2227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13599351#comment-13599351 ] 

Robert Cernak edited comment on JGRP-2227 at 7/2/18 5:38 AM:
-------------------------------------------------------------

In our application we have 2 jgroups communications channels. One for infinispan communication and second for sending commands between nodes. 
I realized that it will be more beneficial to focus to this 2nd mentioned pure jgroups "commands channel", so we will separate any relation to Infinispan.
So I made test case again. This time I made try/catch block on place where this command channel is being created and connected:


{code:java}
this.commandsChannel = new JChannel(this.commandsChannelFile);
this.commandsChannel.setName(nodeName + "-" + String.format("%05x", new Random().nextInt(0xfffff)));
this.commandsChannel.setDiscardOwnMessages(true);
try {
	this.commandsChannel.connect(createClusterNameForChannel(clusterName));
} catch (Exception e) {
	System.out.println("Here should be thrown SecurityException");
}
//this.commandsChannel is org.jgroups.JChannel
{code}

I started node 1, in logs can be seen that it correctly forms new cluster as the first member. After that I started node 2. In logs can be seen that it tries to connect for 10 times and afterwards it forms new cluster. However no SecurityException was thrown.

Including trace logs from both nodes for org.jgroups.protocols and as well only logs for org.jgroups.protocols.pbcast.GMS:
 [^traceLogs.zip] 

if you are interested in configuration file of command channel, it is included in previously updated zip file: jgroupsDoesNotThrowSecurityExceptionWithJgroups4012.zip


was (Author: robertcernak):
In our application we have 2 jgroups communications channels. One for infinispan communication and second for sending commands between nodes. 
I realized that it will be more beneficial to focus to this 2nd mentioned pure jgroups "commands channel", so we will separate any relation to Infinispan.
So I made test case again. This time I made try/catch block on place where this command channel is being created and connected:


{code:java}
this.commandsChannel = new JChannel(this.commandsChannelFile);
this.commandsChannel.setName(nodeName + "-" + String.format("%05x", new Random().nextInt(0xfffff)));
this.commandsChannel.setDiscardOwnMessages(true);
try {
	this.commandsChannel.connect(createClusterNameForChannel(clusterName));
} catch (Exception e) {
	System.out.println("Here should be thrown SecurityException");
}
//this.commandsChannel is org.jgroups.JChannel
{code}

I started node 1, in logs can be seen that it correctly forms new cluster as the first member. After that I started node 2. In logs can be seen that it tries to connect for 10 times and afterwards it forms new cluster. However no SecurityException was thrown.

Including trace logs from both nodes for org.jgroups.protocols and as well only logs for org.jgroups.protocols.pbcast.GMS:
 [^traceLogs.zip] 


> Use of AUTH does not result in a SecurityException, but instead nodes create separate clusters with the same name
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: JGRP-2227
>                 URL: https://issues.jboss.org/browse/JGRP-2227
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 4.0.6
>            Reporter: Robert Cernak
>            Assignee: Bela Ban
>             Fix For: 4.0.12
>
>         Attachments: jgroupsDoesNotThrowSecurityExceptionWithJgroups4012.zip, jgroupsLogs.zip, traceLogs.zip
>
>
> I implemented method org.jgroups.auth.AuthToken#authenticate(AuthToken token, Message msg) in my class and its body contained only one line: return false; 
> In this way authentication should be false and I should get SecurityException.
> When I started joining of nodes together to form a cluster, instead of getting SecurityException, nodes formed 2 different clusters with the same name.
> I am sure method was evaluated, since I tried to run it also with breakpoint, which was triggered during joining process.



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the jboss-jira mailing list