[ 
https://issues.apache.org/jira/browse/KUDU-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15933592#comment-15933592
 ] 

Adar Dembo commented on KUDU-1948:
----------------------------------

I have a few questions:
* Does a configuration file preclude client APIs? That is, if there's a 
file-based mechanism for specifying something like require_authentication, does 
that mean there's no corresponding API call for it? I'd argue we need both; API 
for completeness (and consistency with existing API options like 
master_addresses) and config file for simplicity.
* If an option can be specified via both client API and config file, which 
takes precedence? I'd argue that the client API takes precedence.
* require_authentication and require_encryption could be viewed as 
application-specific. Suppose the server's rpc_authentication is set to 
'optional'. This means applications get to choose whether authentication is a 
requirement for them or not, right?


> Client-side configuration of cluster details
> --------------------------------------------
>
>                 Key: KUDU-1948
>                 URL: https://issues.apache.org/jira/browse/KUDU-1948
>             Project: Kudu
>          Issue Type: New Feature
>          Components: client, security
>    Affects Versions: 1.3.0
>            Reporter: Todd Lipcon
>
> In the beginning, Kudu clients were configured with only the address of the 
> single Kudu master. This was nice and simple, and there was no need for a 
> client "configuration file".
> Then, we added multi-masters, and the client API had to take a list of master 
> addresses. This wasn't awful, but started to be a bit aggravating when trying 
> to use tools on a multi-master cluster (who wants to type out three long 
> hostnames in a 'ksck' command line every time?).
> Now with security, we have a couple more bits of configuration for the 
> client. Namely:
> - "require SSL" and "require authentication" booleans -- necessary to prevent 
> MITM downgrade attacks
> - custom Kerberos principal -- if the server wants to use a principal other 
> than 'kudu/<HOST>@REALM' then the client needs to know to expect it and fetch 
> the appropriate service ticket. (Note this isn't yet supported but would like 
> to be!)
> In the future, there are other items that might be best specified as part of 
> a client configuration as well (e.g. CA cert for BYO PKI, wire compression 
> options, etc).
> For the above use cases it would be nicer to allow the various options to be 
> specified in a configuration file rather than adding specific APIs for all 
> options.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to