[
https://issues.apache.org/jira/browse/CASSANDRA-4155?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michał Michalski updated CASSANDRA-4155:
----------------------------------------
Description:
I need to use the authorization feature (i.e. provided by SimpleAuthenticator
and SimpleAuthority). The problem is that it's impossible now to pass the
credentials (cassandra.output.keyspace.username and
cassandra.output.keyspace.passwd) to org.apache.cassandra.hadoop.ConfigHelper
because of no setters for these variables. Moreover, even if they could be
passed, nothing will change because they are unused - ExternalClient class from
org.apache.cassandra.hadoop.BulkRecordWriter is not making use of them; it's
not even receiving them and no authorization is provided.
The proposed improvement is to make it possible to authenticate user when
loading data to Cassandra with BulkRecordWriter by adding appropriate setters
to ConfigHelper and then passing credentials to ExternalClient class so it
could use it for authorization request.
I have created a patch for this which I attach.
This improvement was made in the way that does not charm existing
ExternalClient interface usage, but I think that it would be a bit nicer way to
call the new constructor every time (optionally with username and password set
to null) in this code and keeping the old one, instead of having and using two
different constructors in two different cases in one method. However, it's my
first patch for Cassandra, so I submit a less "agressive" one and I'm waiting
for suggestions for to modify it :)
was:
I need to use the authorization feature (i.e. provided by SimpleAuthenticator
and SimpleAuthority). The problem is that it's impossible now to pass the
credentials (cassandra.output.keyspace.username and
cassandra.output.keyspace.passwd) to org.apache.cassandra.hadoop.ConfigHelper
because of no setters for these variables. Moreover, even if they could be
passed, nothing will change because they are unused - ExternalClient class from
org.apache.cassandra.hadoop.BulkRecordWriter is not making use of them; it's
not even receiving them and no authorization is provided.
The proposed improvement is to make it possible to authenticate user when
loading data to Cassandra with BulkRecordWriter by adding appropriate setters
to ConfigHelper and then passing credentials to ExternalClient class so it
could use it for authorization request.
I have created a patch for this which I attach.
This improvement was made in the way that does not charm existing
ExternalClient interface, but I think that it would be a bit nicer way to call
the new constructor every time (optionally with username and password set to
null) in this code and keeping the old one, instead of having and using two
different constructors in two different cases in one method. However, it's my
first patch for Cassandra, so I submit a less "agressive" one and I'm waiting
for suggestions for to modify it :)
> Make possible to authenticate user when loading data to Cassandra with
> BulkRecordWriter.
> ----------------------------------------------------------------------------------------
>
> Key: CASSANDRA-4155
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4155
> Project: Cassandra
> Issue Type: Improvement
> Reporter: Michał Michalski
> Priority: Minor
> Attachments: trunk-4155-nicer-version.txt, trunk-4155.txt
>
>
> I need to use the authorization feature (i.e. provided by SimpleAuthenticator
> and SimpleAuthority). The problem is that it's impossible now to pass the
> credentials (cassandra.output.keyspace.username and
> cassandra.output.keyspace.passwd) to org.apache.cassandra.hadoop.ConfigHelper
> because of no setters for these variables. Moreover, even if they could be
> passed, nothing will change because they are unused - ExternalClient class
> from org.apache.cassandra.hadoop.BulkRecordWriter is not making use of them;
> it's not even receiving them and no authorization is provided.
> The proposed improvement is to make it possible to authenticate user when
> loading data to Cassandra with BulkRecordWriter by adding appropriate setters
> to ConfigHelper and then passing credentials to ExternalClient class so it
> could use it for authorization request.
> I have created a patch for this which I attach.
> This improvement was made in the way that does not charm existing
> ExternalClient interface usage, but I think that it would be a bit nicer way
> to call the new constructor every time (optionally with username and password
> set to null) in this code and keeping the old one, instead of having and
> using two different constructors in two different cases in one method.
> However, it's my first patch for Cassandra, so I submit a less "agressive"
> one and I'm waiting for suggestions for to modify it :)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira