[ 
https://issues.apache.org/jira/browse/SENTRY-999?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Colin Ma updated SENTRY-999:
----------------------------
    Description: 
*Problem*
Currently, many components are integrated with Sentry, eg, Solr, Sqoop. But 
when do the integration, some duplicated work need to be done, for example, 
sentry-core-model-xxx and sentry-policy-xxx should be created for new component 
and the code is kind of duplicated. These makes the integration complex and the 
source maintenance will be hard. 
Considering others components will be integrated with Sentry, eg, Kafka. The 
Sentry should be refactored to be easy integrated.

*Refactor point*
1.      PolicyEngine: Currently, Sentry has many PolicyEngine, eg, 
SimpleSearchPolicyEngine for Solr, SimpleSqoopPolicyEngine for Sqoop. One 
CommonPolicyEngine should be ok for these external components. 
2.      Privilege: Currently, SearchWildcardPrivilege, 
IndexerWildcardPrivilege, SqoopWildcardPrivilege have the same implementation. 
One CommonPrivilege is enough.
3.      Action: Currently, SearchActionFactory, SqoopActionFactory are never 
used in Privilege.imply(). The idea for these ActionFactory is good, but it is 
component related and should be located in sentry-xxx-binding project.


  was:Currently, many components are integrated with Sentry, eg, Solr, Sqoop. 
But when do the integration, some duplicated work need to be done, for example, 
sentry-core-model-xxx and sentry-policy-xxx should be created for new component 
and the code is kind of duplicated. 


> Refactor the sentry to integrate with external components quickly
> -----------------------------------------------------------------
>
>                 Key: SENTRY-999
>                 URL: https://issues.apache.org/jira/browse/SENTRY-999
>             Project: Sentry
>          Issue Type: Improvement
>            Reporter: Colin Ma
>            Assignee: Colin Ma
>             Fix For: 1.7.0
>
>
> *Problem*
> Currently, many components are integrated with Sentry, eg, Solr, Sqoop. But 
> when do the integration, some duplicated work need to be done, for example, 
> sentry-core-model-xxx and sentry-policy-xxx should be created for new 
> component and the code is kind of duplicated. These makes the integration 
> complex and the source maintenance will be hard. 
> Considering others components will be integrated with Sentry, eg, Kafka. The 
> Sentry should be refactored to be easy integrated.
> *Refactor point*
> 1.    PolicyEngine: Currently, Sentry has many PolicyEngine, eg, 
> SimpleSearchPolicyEngine for Solr, SimpleSqoopPolicyEngine for Sqoop. One 
> CommonPolicyEngine should be ok for these external components. 
> 2.    Privilege: Currently, SearchWildcardPrivilege, 
> IndexerWildcardPrivilege, SqoopWildcardPrivilege have the same 
> implementation. One CommonPrivilege is enough.
> 3.    Action: Currently, SearchActionFactory, SqoopActionFactory are never 
> used in Privilege.imply(). The idea for these ActionFactory is good, but it 
> is component related and should be located in sentry-xxx-binding project.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to