Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-5294

PlainSaslServerFactory should allow a null Map in getMechanismNames

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.10.2.1
    • 0.11.0.0
    • None
    • None

    Description

      PlainSaslServerFactory will get a NullPointerException if getMechanismNames(Map<String,?> props) is called with a null props map.

      The Java docs for getMechanismNames from the base class javax.security.sasl.SaslServerFactory say that the map can be null:

      • @param props The possibly null set of properties used to specify the
      • security policy of the SASL mechanisms.

      A scenario where this causes a problem is when attempting to use a Kafka consumer/producer with the PlainLoginModule in the same JVM as a Hadoop client with Kerberos...

      The Hadoop client purposely calls getMechanismNames with a null map, so if you have already create a Kafka consumer/producer with PlainLoginModule then the PlainSaslServerFactory will be registered in the list of providers in java.security.Security, and then NPEs when the Hadoop client calls getMechanismNames on each provider with a null map.

      Attachments

        Issue Links

          Activity

            People

              mimaison Mickael Maison
              bbende Bryan Bende
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: