[
https://issues.apache.org/jira/browse/SENTRY-985?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15052201#comment-15052201
]
Anne Yu commented on SENTRY-985:
--------------------------------
fyi. [~dapengsun] and [~haohao]. When we consider client integration and
generic policy support, can consider solr.
> sentry config-tool fails to import Solr sentry-provider.ini
> -----------------------------------------------------------
>
> Key: SENTRY-985
> URL: https://issues.apache.org/jira/browse/SENTRY-985
> Project: Sentry
> Issue Type: Bug
> Components: Sentry
> Affects Versions: 1.6.0
> Reporter: Anne Yu
>
> The Hadoop Security book introduces the tool as a good way to check policy
> files for errors and to verify privileges for a given user. You can also use
> it to import policies from policy files to the Sentry Service. In the quote
> below it implies that you should use it for Solr policy files to avoid syntax
> errors.
> From O'Reilly Hadoop Security book:
> "It is important to point out that while SQL policy files allow for separate
> policy files per database, Solr does not. This means that Solr policy
> administrators need to be extra careful when modifying the policies because,
> as with the SQL policy files, a syntax error invalidates the entire policy
> file, thus inadvertently denying access to everyone. A nice feature to help
> combat typos and mistakes is to validate the policy file using the
> config-tool, which leads us into the next section."
> However, as I've dug into it I see that config-tool does not support of
> AuthorizableType of "collection", which is the "authorizable" used in Solr
> Sentry policy files.
> [nwhite@host-10-17-80-38 ~]$ sentry --command config-tool -l -u nwhite -i
> file:///home/nwhite/sentry-provider.ini -s
> file:///etc/sentry/conf/sentry-site.xml -d
> Configuration:
> Sentry package jar:
> file:/opt/cloudera/parcels/CDH-5.4.8-1.cdh5.4.8.p0.4/jars/sentry-binding-hive-1.4.0-cdh5.4.8.jar
> Hive config: file:/etc/hive/conf.cloudera.hive/hive-site.xml
> 15/12/10 06:58:54 INFO conf.HiveAuthzConf: DefaultFS:
> hdfs://host-10-17-80-38.coe.cloudera.com:8020
> 15/12/10 06:58:54 INFO conf.HiveAuthzConf: DefaultFS:
> hdfs://host-10-17-80-38.coe.cloudera.com:8020
> Sentry config: file:/etc/sentry/conf/sentry-site.xml
> Sentry Policy: file:///home/nwhite/sentry-provider.ini
> Sentry server: HS2
> 15/12/10 06:58:55 INFO file.SimpleFileProviderBackend: Parsing
> file:/home/nwhite/sentry-provider.ini
> 15/12/10 06:58:55 INFO file.SimpleFileProviderBackend: Filesystem: file:///
> 15/12/10 06:58:55 INFO file.PolicyFiles: Opening
> file:/home/nwhite/sentry-provider.ini
> 15/12/10 06:58:55 ERROR file.SimpleFileProviderBackend: Error processing
> file, ignoring file:/home/nwhite/sentry-provider.ini
> org.apache.shiro.config.ConfigurationException: No authorizable found for
> collection=employees
> at
> org.apache.sentry.policy.db.AbstractDBPrivilegeValidator.parsePrivilege(AbstractDBPrivilegeValidator.java:42)
> at
> org.apache.sentry.policy.db.ServersAllIsInvalid.validate(ServersAllIsInvalid.java:29)
> From org.apache.sentry.core.model.db.DBModelAuthorizable:
> public enum More ...AuthorizableType {
> 24 Server,
> 25 Db,
> 26 Table,
> 27 View,
> 28 URI
> 29 };
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)