Hi everyone.  This concludes the vote for KIP 515.  The vote passes
with +1 binding votes from Gwen, Rajini, and Manikumar and a +1
non-binding vote from Mitch.  I have marked the KIP as "Accepted" and
opened a pull request at https://github.com/apache/kafka/pull/8003.

Ron



Ron

On Thu, Jan 23, 2020 at 9:35 AM Ron Dagostino <rndg...@gmail.com> wrote:
>
> Hi everyone.  I discovered something minor while addressing the
> AclAuthorizer config inheritance issue that I need to document.  The
> minimum 3 days for voting is up and we could successfully conclude the
> vote with 3 +1 binding votes and a +1 non-binding vote, but I'll leave
> the vote open another day in case anyone needs to comment.  Here's the
> information.
>
> The "zookeeper.ssl.context.supplier.class" configuration doesn't
> actually exist in ZooKeeper 3.5.6.  The ZooKeeper admin guide
> documents it as being there, but it doesn't appear in the code.  This
> means we can't support it in KIP-515, and I am removing it.  I checked
> the latest ZooKeeper 3.6 SNAPSHOT, and it has been added.  So this
> config could probably be added to Kafka via a new, small KIP if/when
> we upgrade to ZooKeeper 3.6 (which looks to be in release-candidate
> stage at the moment).
>
>
> I've created https://issues.apache.org/jira/browse/KAFKA-9469 ("Add
> zookeeper.ssl.context.supplier.class config if/when adopting ZooKeeper
> 3.6") for this issue.
>
> Again, I will leave the vote open another day in case there needs to
> be any comment or discussion about this.
>
> Ron
>
> On Wed, Jan 22, 2020 at 8:56 AM Ron Dagostino <rndg...@gmail.com> wrote:
> >
> > Hi everyone.  While finishing the PR for this KIP I realized that the
> > inheritance of TLS ZooKeeper configs that happens in the *authorizer*
> > does not reflect he spirit of our discussion.  In particular, based on
> > our inheritance discussion in the DISCUSS thread, the inheritance of
> > authorizer configs needn't be as constrained as it is currently
> > documented to be.  I am going to update the KIP as described below and
> > will assume there are no objections if nobody comments as such on this
> > VOTE thread.
> >
> > The KIP currently states that there is a limited inheritance for
> > authorizer ZooKeeper TLS configs as follows: "Every config can be
> > prefixed with "authorizer." for the case when
> > kafka.security.authorizer.AclAuthorizer connects via TLS to a
> > ZooKeeper quorum separate from the one that Kafka is using – this
> > specific use case will be identified in the configuration by
> > explicitly setting authorizer.zookeeper.ssl.client.enable=true."
> >
> > In other words, the authorizer inherits the broker's ZK TLS configs
> > *unless* it explicitly indicates via
> > authorizer.zookeeper.ssl.client.enable=true that it is going to use
> > its own configs, in which case inheritance does not occur -- i.e.
> > there is no overriding or merging going on where the broker's
> > ZooKeeper TLS configs act as a base upon which any "authorizer."
> > prefixed configs act as an overlay/override; instead, if you point to
> > another ZooKeeper quorum and want to change anything related to TLS
> > then you must restate everything.
> >
> > We had a discussion related to potentially inheriting a broker's
> > *non-ZooKeeper* TLS configs.  Inheritance was desirable, and I came
> > around to that way of thinking, but it turned out to be impossible to
> > do given that the broker's non-ZooKeeper TLS configs are potentially
> > stored in ZooKeeper.  Still, inheritance was desirable as a concept,
> > so we should do it for the authorizer since the broker's *ZooKeeper*
> > TLS configs are available in the config file.
> >
> > The KIP will now state that the broker's ZooKeeper TLS configs will
> > act as a base config upon which any "authorizer." ZooKeeper TLS
> > configs act as an overlay -- the configs are merged.  This is
> > consistent with how the other "authorizer." configs for ZooKeeper work
> > (connection/session timeouts and max inflight requests, for example).
> > This means that the order of evaluation for any particular authorizer
> > ZooKeeper TLS configuration will be:
> >
> > (1) system property
> > (2) broker non-prefixed ZooKeeper TLS config
> > (3) "authorizer." prefixed ZooKeeper TLS config
> >
> > Note that (1) + (2) simply yields the ZooKeeper TLS configs that the
> > broker is using -- with (2) overlaying (1) -- so any "authorizer."
> > prefixed ZooKeeper TLS configs are a true additional level of overlay
> > (again, consistent with the behavior of the ZooKeeper configs for
> > connection/session timeouts and max inflight requests).
> >
> > Ron
> >
> > On Mon, Jan 20, 2020 at 11:14 AM Manikumar <manikumar.re...@gmail.com> 
> > wrote:
> > >
> > > +1 (binding).
> > >
> > > Thanks for the KIP.
> > >
> > > On Mon, Jan 20, 2020 at 9:21 PM Rajini Sivaram <rajinisiva...@gmail.com>
> > > wrote:
> > >
> > > > +1 (binding)
> > > >
> > > > Thanks for the KIP, Ron!
> > > >
> > > > Regards,
> > > >
> > > > Rajini
> > > >
> > > >
> > > > On Mon, Jan 20, 2020 at 3:36 PM Gwen Shapira <g...@confluent.io> wrote:
> > > >
> > > > > +1 (binding), this has been an on-going concern. Thank you for
> > > > > addressing this, Ron.
> > > > >
> > > > > On Mon, Jan 20, 2020 at 5:22 AM Ron Dagostino <rndg...@gmail.com> 
> > > > > wrote:
> > > > > >
> > > > > > Hi everyone.  I would like to start a vote on KIP-515: Enable ZK
> > > > > > client to use the new TLS supported authentication.
> > > > > >
> > > > > > The KIP is here:
> > > > > >
> > > > >
> > > > https://cwiki.apache.org/confluence/display/KAFKA/KIP-515%3A+Enable+ZK+client+to+use+the+new+TLS+supported+authentication
> > > > > >
> > > > > > The discussion thread is here:
> > > > > >
> > > > >
> > > > https://lists.apache.org/thread.html/519d07e607cf6598a8126139c964d31fa46f2c028b88b1d44086b8a9%40%3Cdev.kafka.apache.org%3E
> > > > > >
> > > > > > Thanks,
> > > > > >
> > > > > > Ron
> > > > >
> > > >

Reply via email to