[
https://issues.apache.org/jira/browse/ACCUMULO-241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13179856#comment-13179856
]
Adam Fuchs commented on ACCUMULO-241:
-------------------------------------
We have a few goals for the language used in security labels (expressions made
up of operators and authorizations): they should be easy to read by human and
by computer, and they should be unambiguous, the Boolean logic operators should
be easily distinguished from the atomic authorizations, labels should be
backwards compatible forever, and the language should be extensible to anything
we might want to do with it in the future. To support backwards compatibility
while leaving room for extension, we originally reserved all non-alphanumeric
characters and only allowed alphanumeric characters within authorizations. When
our users asked for '_', '-', and ':' for use in authorizations, we added those
to the white list. Moving to a black list approach is a bit more limiting to
extensibility, but I think it can be done while preserving the possibility of
adding future capabilities.
Supporting escaping of reserved characters might be another option, but that
might reduce the human readability.
The big question is what do we want to do with cell-level security in the
future? I think we probably want to support "not" at some point, so probably
'!' and '~' should be reserved. If we do want to support escaping, we should
probably reserve '\' or '#' and ';'. It has been hinted that we might want to
support something like regular expressions, so '*', '?', '[', ']', '+', ....
How about variable substitution, with '%' or '$'?
Maybe it would be better to keep a white list for now?
> Visibility labels should blacklist non-ASCII characters instead of
> whitelisting select ASCII characters
> -------------------------------------------------------------------------------------------------------
>
> Key: ACCUMULO-241
> URL: https://issues.apache.org/jira/browse/ACCUMULO-241
> Project: Accumulo
> Issue Type: Improvement
> Affects Versions: 1.3.5
> Reporter: John Vines
> Labels: visibility
> Fix For: 1.3.6
>
>
> We currently whitelist our visibility labels to only allow alphanumerics and
> a few select delimiting characters. While we strive for human-readable
> labels, we should instead utilize a blacklist approach where we disallow
> parentheses, ampersands, pipes, and any non-ASCII characters. This will
> provide users with more flexibility in labeling, while still sticking to
> human readability.
--
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