You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stefan Podkowinski (JIRA)" <ji...@apache.org> on 2018/02/20 13:01:00 UTC

[jira] [Resolved] (CASSANDRA-13314) Config file based SSL settings

     [ https://issues.apache.org/jira/browse/CASSANDRA-13314?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stefan Podkowinski resolved CASSANDRA-13314.
--------------------------------------------
       Resolution: Won't Fix
    Fix Version/s:     (was: 4.x)

Closing this ticket for now, as we haven't moved on in the discussion for months and the idea is likely obsolete by now, with the current netty based stack.

> Config file based SSL settings
> ------------------------------
>
>                 Key: CASSANDRA-13314
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13314
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Configuration, Tools
>            Reporter: Stefan Podkowinski
>            Assignee: Stefan Podkowinski
>            Priority: Minor
>
> As follow up of CASSANDRA-13259, I'd like to continue discussing how we can make SSL less awkward to use and further move SSL related code out of our code base. Currently we construct our own SSLContext in SSLFactory based on EncryptionOptions passed by the MessagingService or any individual tool where we need to offer SSL support. This leads to a situation where the user has not only to learn how to enable the correct settings in cassandra.yaml, but these settings must also be reflected in each tool's own command line options. As argued in CASSANDRA-13259, these settings could be done as well by setting the appropriate system and security properties ([overview|http://docs.oracle.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide.html#InstallationAndCustomization]) and we should just point the user to the right files to do that (jvm.options and java.security) and make sure that daemon and all affected tools will source them. 
> Since giving this a quick try on my WIP branch, I've noticed the following issues in doing so:
> * Keystore passwords will show up in process list (-Djavax.net.ssl.keyStorePassword=..). We should keep the password setting in cassandra.yaml and clis and do a System.setProperty() if they have been provided. 
> * It's only possible to configure settings for a single default key-/truststore. Since we currently allow configuring both ServerEncryptionOptions and ClientEncryptionOptions with different settings, we'd have to make this a breaking change. I don't really see why you would want to use different stores for node-to-node and node-to-client, but that wouldn't be possible anymore. 
> * This would probably only make sense if we really remove the affected CLI options, or we'll end up with just another way to configure this stuff. This will break existing scripts and obsolete existing documentation.
> Any opinions?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org