Why is the Ignite port listening not authenticated?

Viewed 29

org.apache.ignite.internal.util.nio.GridNioServer#createSelector

// Create a new selector
        selector = SelectorProvider.provider().openSelector();

        if (addr != null) {
            // Create a new non-blocking server socket channel
            srvrCh = ServerSocketChannel.open();

            srvrCh.configureBlocking(false);

            if (sockRcvBuf > 0)
                srvrCh.socket().setReceiveBufferSize(sockRcvBuf);

            // Bind the server socket to the specified address and port
            srvrCh.socket().bind(addr);

            // Register the server socket channel, indicating an interest in
            // accepting new connections
            srvrCh.register(selector, SelectionKey.OP_ACCEPT);
        }

        return selector;

Why is the Ignite port listening not authenticated? How can I set authentication?

1 Answers

Two parts:

  1. It has to open the connection so that it can be told what the credentials are. If they're not valid, Ignite will disconnect
  2. Ignite can only authenticate thin-clients out-of-the-box. I have not checked the code, but this could be a server or thick-client code path
Related