Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-1881

Shutdown server immediately upon PrivilegedActionException

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Patch Available
    • Major
    • Resolution: Unresolved
    • 3.4.5
    • None
    • server
    • None

    Description

      It seems when an SaslServer cannot be created due to a PriviledgedActionException, it is better to shutdown the server immediately instead of letting it to propagate. The current behaviour will just set ServerCncx.zooKeeperSaslServer to null, and later every time when an SASL request comes in it will be rejected. If we already detect the loophole early, we should just reject it early.

      private SaslServer createSaslServer(final Login login) {
          catch (PrivilegedActionException e) {
              // TODO: exit server at this point(?)
              LOG.error("Zookeeper Quorum member experienced a PrivilegedActionException exception while creating a SaslServer using a JAAS principal context:" + e);
              e.printStackTrace();
          }
      

      For what it is worth, attaching an attempt to patch it. The idea of the patch is to propagate this PrivilegedActionException to ServerCnxnFactory and shut down all the connections and server. Not sure if this is the right way to solve it. Any comments are appreciated!

      Also in the patch are two additional logging on two unlogged exceptions.

      Attachments

        1. zookeeper-1881.patch
          8 kB
          Ding Yuan

        Activity

          People

            d.yuan Ding Yuan
            d.yuan Ding Yuan
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: