<?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>question Re: How should I use the SSLContext controller in a multi-tenant cluster? in Support Questions</title>
    <link>https://community.cloudera.com/t5/Support-Questions/How-should-I-use-the-SSLContext-controller-in-a-multi-tenant/m-p/212322#M174258</link>
    <description>&lt;P&gt;David,&lt;/P&gt;&lt;P&gt;I would recommend you create an &lt;CODE&gt;SSLContextService&lt;/CODE&gt; at root which only uses the truststore and ask your users to select that controller service when necessary. If they have requirements to connect to external services which require mutual authentication via TLS client certificates, you may have to create additional controller services with limited keystore access and provide those on a per-instance/user basis. If these are globally-accessible external services (aka not organizationally-signed), you could also provide a generic controller service which uses the Java CA truststore (something like &lt;CODE&gt;$JAVA_HOME/jre/lib/security/cacerts&lt;/CODE&gt; with default password "changeit"). &lt;/P&gt;</description>
    <pubDate>Sat, 02 Jun 2018 09:35:34 GMT</pubDate>
    <dc:creator>alopresto</dc:creator>
    <dc:date>2018-06-02T09:35:34Z</dc:date>
    <item>
      <title>How should I use the SSLContext controller in a multi-tenant cluster?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-should-I-use-the-SSLContext-controller-in-a-multi-tenant/m-p/212321#M174257</link>
      <description>&lt;P&gt;The Background:&lt;/P&gt;&lt;P&gt;I have multitenant clusters.  My organization has delivered me a combined truststore and keystore jks file.&lt;/P&gt;&lt;P&gt;I will have users who need to hit various external-to-nifi services using SSL/TLS.  It is tempting to create an sslcontext controller service at nifi root and let all my users use this service when they need SSL.  One problem with this approach that I see is that if I let all my users use the hosts' certs, (keystore and truststore)  they could just use a GetHTTP processor and talk to the nifi rest api with full priveleges (or at least whatever privs the node has) &lt;/P&gt;&lt;P&gt;So to prevent this I figure that I should get my root CA certs into a separate truststore that is not password protected, and only use this.&lt;/P&gt;&lt;P&gt;The question:&lt;/P&gt;&lt;P&gt;Should I create an sslcontext service at the root flow with only a truststore, and ask my users to all use the same controller service?  Or should I just notify my users of the path to the truststore and have them create controllers within their process groups as needed,  what are the pros and cons of each approach?&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 03:13:12 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-should-I-use-the-SSLContext-controller-in-a-multi-tenant/m-p/212321#M174257</guid>
      <dc:creator>david_miller</dc:creator>
      <dc:date>2018-05-30T03:13:12Z</dc:date>
    </item>
    <item>
      <title>Re: How should I use the SSLContext controller in a multi-tenant cluster?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-should-I-use-the-SSLContext-controller-in-a-multi-tenant/m-p/212322#M174258</link>
      <description>&lt;P&gt;David,&lt;/P&gt;&lt;P&gt;I would recommend you create an &lt;CODE&gt;SSLContextService&lt;/CODE&gt; at root which only uses the truststore and ask your users to select that controller service when necessary. If they have requirements to connect to external services which require mutual authentication via TLS client certificates, you may have to create additional controller services with limited keystore access and provide those on a per-instance/user basis. If these are globally-accessible external services (aka not organizationally-signed), you could also provide a generic controller service which uses the Java CA truststore (something like &lt;CODE&gt;$JAVA_HOME/jre/lib/security/cacerts&lt;/CODE&gt; with default password "changeit"). &lt;/P&gt;</description>
      <pubDate>Sat, 02 Jun 2018 09:35:34 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-should-I-use-the-SSLContext-controller-in-a-multi-tenant/m-p/212322#M174258</guid>
      <dc:creator>alopresto</dc:creator>
      <dc:date>2018-06-02T09:35:34Z</dc:date>
    </item>
  </channel>
</rss>

