<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Kafka with SASL/SSL in Nuxeo Forum</title>
    <link>https://connect.hyland.com/t5/nuxeo-forum/kafka-with-sasl-ssl/m-p/314269#M1270</link>
    <description>&lt;P&gt;Nuxeo folks. In kafka-config.xml.nxftl, the following version supports SASL plaintext, SASL SCRAM-SHA-512, SASL SCRAM-SHA-512
over SSL, and two-way SSL. Please consider:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;&amp;lt;#escape x as x?xml&amp;gt;
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;component name="org.nuxeo.kafka.defaultConfig"&amp;gt;
&amp;lt;#if "${kafka.enabled}" == "true"&amp;gt;
  &amp;lt;require&amp;gt;org.nuxeo.runtime.stream.kafka.service&amp;lt;/require&amp;gt;
  &amp;lt;extension point="kafkaConfig" target="org.nuxeo.runtime.stream.kafka.service"&amp;gt;
    &amp;lt;kafkaConfig name="default" topicPrefix="${kafka.topicPrefix}"&amp;gt;
      &amp;lt;producer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="default.replication.factor"&amp;gt;${kafka.default.replication.factor}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/producer&amp;gt;
      &amp;lt;consumer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="request.timeout.ms"&amp;gt;${kafka.request.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="max.poll.interval.ms"&amp;gt;${kafka.max.poll.interval.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="session.timeout.ms"&amp;gt;${kafka.session.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="heartbeat.interval.ms"&amp;gt;${kafka.heartbeat.interval.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="max.poll.records"&amp;gt;${kafka.max.poll.records}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/consumer&amp;gt;
    &amp;lt;/kafkaConfig&amp;gt;
    &amp;lt;kafkaConfig name="bulk" topicPrefix="${kafka.topicPrefix}bulk-"&amp;gt;
      &amp;lt;producer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="default.replication.factor"&amp;gt;${kafka.default.replication.factor}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/producer&amp;gt;
      &amp;lt;consumer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="request.timeout.ms"&amp;gt;${kafka.request.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="max.poll.interval.ms"&amp;gt;${kafka.max.poll.interval.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="session.timeout.ms"&amp;gt;${kafka.session.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="heartbeat.interval.ms"&amp;gt;${kafka.heartbeat.interval.ms}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/consumer&amp;gt;
    &amp;lt;/kafkaConfig&amp;gt;
  &amp;lt;/extension&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/component&amp;gt;
&amp;lt;/#escape&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Mon, 29 Apr 2019 12:34:05 GMT</pubDate>
    <dc:creator>Eric_Ace</dc:creator>
    <dc:date>2019-04-29T12:34:05Z</dc:date>
    <item>
      <title>Kafka with SASL/SSL</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/kafka-with-sasl-ssl/m-p/314269#M1270</link>
      <description>&lt;P&gt;Nuxeo folks. In kafka-config.xml.nxftl, the following version supports SASL plaintext, SASL SCRAM-SHA-512, SASL SCRAM-SHA-512
over SSL, and two-way SSL. Please consider:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;&amp;lt;#escape x as x?xml&amp;gt;
&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;component name="org.nuxeo.kafka.defaultConfig"&amp;gt;
&amp;lt;#if "${kafka.enabled}" == "true"&amp;gt;
  &amp;lt;require&amp;gt;org.nuxeo.runtime.stream.kafka.service&amp;lt;/require&amp;gt;
  &amp;lt;extension point="kafkaConfig" target="org.nuxeo.runtime.stream.kafka.service"&amp;gt;
    &amp;lt;kafkaConfig name="default" topicPrefix="${kafka.topicPrefix}"&amp;gt;
      &amp;lt;producer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="default.replication.factor"&amp;gt;${kafka.default.replication.factor}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/producer&amp;gt;
      &amp;lt;consumer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="request.timeout.ms"&amp;gt;${kafka.request.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="max.poll.interval.ms"&amp;gt;${kafka.max.poll.interval.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="session.timeout.ms"&amp;gt;${kafka.session.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="heartbeat.interval.ms"&amp;gt;${kafka.heartbeat.interval.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="max.poll.records"&amp;gt;${kafka.max.poll.records}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/consumer&amp;gt;
    &amp;lt;/kafkaConfig&amp;gt;
    &amp;lt;kafkaConfig name="bulk" topicPrefix="${kafka.topicPrefix}bulk-"&amp;gt;
      &amp;lt;producer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="default.replication.factor"&amp;gt;${kafka.default.replication.factor}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/producer&amp;gt;
      &amp;lt;consumer&amp;gt;
        &amp;lt;property name="bootstrap.servers"&amp;gt;${kafka.bootstrap.servers}&amp;lt;/property&amp;gt;
        &amp;lt;property name="request.timeout.ms"&amp;gt;${kafka.request.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="max.poll.interval.ms"&amp;gt;${kafka.max.poll.interval.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="session.timeout.ms"&amp;gt;${kafka.session.timeout.ms}&amp;lt;/property&amp;gt;
        &amp;lt;property name="heartbeat.interval.ms"&amp;gt;${kafka.heartbeat.interval.ms}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.sasl.enabled)!"false") == "true" || ((kafka.ssl)!"false") == "true"&amp;gt;
        &amp;lt;property name="security.protocol"&amp;gt;${kafka.security.protocol}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.sasl.enabled}" == "true"&amp;gt;
        &amp;lt;property name="sasl.mechanism"&amp;gt;${kafka.sasl.mechanism}&amp;lt;/property&amp;gt;
        &amp;lt;property name="sasl.jaas.config"&amp;gt;${kafka.sasl.jaas.config}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;#if "${kafka.ssl}" == "true"&amp;gt;
        &amp;lt;property name="ssl.truststore.type"&amp;gt;${kafka.truststore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.location"&amp;gt;${kafka.truststore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.truststore.password"&amp;gt;${kafka.truststore.password}&amp;lt;/property&amp;gt;
&amp;lt;#if ((kafka.security.protocol)!"") == "SSL"&amp;gt;
        &amp;lt;property name="ssl.keystore.type"&amp;gt;${kafka.keystore.type}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.location"&amp;gt;${kafka.keystore.path}&amp;lt;/property&amp;gt;
        &amp;lt;property name="ssl.keystore.password"&amp;gt;${kafka.keystore.password}&amp;lt;/property&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/#if&amp;gt;
      &amp;lt;/consumer&amp;gt;
    &amp;lt;/kafkaConfig&amp;gt;
  &amp;lt;/extension&amp;gt;
&amp;lt;/#if&amp;gt;
&amp;lt;/component&amp;gt;
&amp;lt;/#escape&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 29 Apr 2019 12:34:05 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/kafka-with-sasl-ssl/m-p/314269#M1270</guid>
      <dc:creator>Eric_Ace</dc:creator>
      <dc:date>2019-04-29T12:34:05Z</dc:date>
    </item>
  </channel>
</rss>

