You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2012/08/28 22:23:09 UTC

[jira] [Commented] (CASSANDRA-4490) Improve IAuthority interface by introducing fine-grained access permissions and grant/revoke commands.

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

Jonathan Ellis commented on CASSANDRA-4490:
-------------------------------------------

If we can do this without breaking existing IAuthority implementations, this is probably safe to do in 1.1.x.
                
> Improve IAuthority interface by introducing fine-grained access permissions and grant/revoke commands.
> ------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4490
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4490
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Pavel Yaskevich
>            Assignee: Pavel Yaskevich
>            Priority: Minor
>             Fix For: 1.1.5
>
>         Attachments: CASSANDRA-4490.patch
>
>
> In order to improve IAuthority interface I propose to add the following new permissions: USE, SELECT, CREATE, ALTER, DROP, UPDATE, DELETE, ALL, NONE. And the following new commands to the CQL 3.0 which would give users possibility (with appropriate implementation) to dynamically change user's rights to access system objects:
> GRANT  <permission> ON <resource> TO <user> [WITH GRANT OPTION];
> REVOKE <permission> ON <resource> FROM <user_name>;
> LIST GRANTS FOR <user>; // Not 'SHOW' because it's reserved for cqlsh for commands like 'show cluster'
> where <resource> is Keyspace or ColumnFamily (initially, but extendable to indexes or configration options in the future), and <permission> is listed above.
> To keep the system backward compatible with old authorization interface implementations Permission class would include the mappings of the new to old 
> permissions:
> READ  -> USE, SELECT
> WRITE -> USE, CREATE, ALTER, DROP, UPDATE, DELETE

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira