> On May 11, 2019, 7:10 a.m., Don Bosco Durai wrote:
> > agents-common/src/main/java/org/apache/ranger/plugin/model/RangerPolicy.java
> > Lines 944 (patched)
> > <https://reviews.apache.org/r/70629/diff/1/?file=2144531#file2144531line944>
> >
> >     Do we have small window where the roles could be empty and it could 
> > affect during multi-thread environment>
> 
> Abhay Kulkarni wrote:
>     I don't think so. Are you suggesting concurrent updates to policy may 
> lead to inconsistent policy state? If so, one of the transactions will be 
> aborted when attempting to persist changes to database.

I meant, while the policies are getting updated, a request for authorization, 
is it possible the  list will be empty?


- Don Bosco


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/70629/#review215198
-----------------------------------------------------------


On May 14, 2019, 1:55 a.m., Abhay Kulkarni wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/70629/
> -----------------------------------------------------------
> 
> (Updated May 14, 2019, 1:55 a.m.)
> 
> 
> Review request for ranger, Madhan Neethiraj, Mehul Parikh, Nikhil P, Nitin 
> Galave, Pradeep Agrawal, Ramesh Mani, Sailaja Polavarapu, and Velmurugan 
> Periasamy.
> 
> 
> Bugs: RANGER-2414
>     https://issues.apache.org/jira/browse/RANGER-2414
> 
> 
> Repository: ranger
> 
> 
> Description
> -------
> 
> Current Ranger policy model supports 
> authorization/column-masking/row-filtering for users/user-groups based on 
> various criteria like accessed-resource, resource-classifications, IP-address 
> and custom conditions. Given the wide-spread use of role-based authorization 
> in traditional enterprise applications (like RDBMS, J2EE), it will be very 
> useful for Ranger policy model to support 'roles' i.e. to be able to specify 
> authorization/column-masking/row-filtering for roles as well - in addition to 
> existing support for users and user-groups.
> 
> This patch provides an initial implementation of support for roles in Ranger.
> 
> 
> Diffs
> -----
> 
>   
> agents-audit/src/main/java/org/apache/ranger/audit/model/AuthzAuditEvent.java 
> 28db58cd9 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/audit/RangerDefaultAuditHandler.java
>  5e2c49211 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/errors/ValidationErrorCode.java
>  3111037ff 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/model/RangerPolicy.java 
> 3cf509d7c 
>   agents-common/src/main/java/org/apache/ranger/plugin/model/RangerRole.java 
> PRE-CREATION 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/model/validation/RangerPolicyValidator.java
>  990aab0c9 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyEngine.java
>  9ed500c50 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyEngineImpl.java
>  365edcf35 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerResourceACLs.java
>  eafbde246 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java
>  a57b39827 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyItemEvaluator.java
>  45231e739 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerOptimizedPolicyEvaluator.java
>  47b4921ad 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerPolicyEvaluator.java
>  5400f71c4 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerPolicyItemEvaluator.java
>  a6e24c609 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/service/RangerAuthContext.java
>  5a18226fe 
>   agents-common/src/main/java/org/apache/ranger/plugin/store/RoleStore.java 
> PRE-CREATION 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/util/RangerAccessRequestUtil.java
>  c20ccded6 
>   agents-common/src/main/java/org/apache/ranger/plugin/util/SearchFilter.java 
> e22249ac6 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/util/ServicePolicies.java
>  cbd2cb012 
>   
> agents-common/src/test/java/org/apache/ranger/plugin/model/validation/TestRangerPolicyValidator.java
>  2c1de4eb8 
>   
> agents-common/src/test/java/org/apache/ranger/plugin/policyengine/TestPolicyACLs.java
>  e92a2e658 
>   
> agents-common/src/test/java/org/apache/ranger/plugin/policyengine/TestPolicyEngine.java
>  5a47ba401 
>   agents-common/src/test/resources/policyengine/test_aclprovider_default.json 
> b4c4def85 
>   
> agents-common/src/test/resources/policyengine/test_policyengine_with_roles.json
>  PRE-CREATION 
>   
> hdfs-agent/src/main/java/org/apache/ranger/authorization/hadoop/RangerHdfsAuthorizer.java
>  f204c15c0 
>   
> hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuditHandler.java
>  bf4d6c1ea 
>   security-admin/db/mysql/optimized/current/ranger_core_db_mysql.sql 
> 769afb56a 
>   security-admin/db/mysql/patches/041-create-role-schema.sql PRE-CREATION 
>   security-admin/db/oracle/optimized/current/ranger_core_db_oracle.sql 
> 9a9e36b09 
>   security-admin/db/oracle/patches/041-create-role-schema.sql PRE-CREATION 
>   security-admin/db/postgres/optimized/current/ranger_core_db_postgres.sql 
> df4201d89 
>   security-admin/db/postgres/patches/041-create-role-schema.sql PRE-CREATION 
>   
> security-admin/db/sqlanywhere/optimized/current/ranger_core_db_sqlanywhere.sql
>  a2d413743 
>   security-admin/db/sqlanywhere/patches/041-create-role-schema.sql 
> PRE-CREATION 
>   security-admin/db/sqlserver/optimized/current/ranger_core_db_sqlserver.sql 
> 1f3ccbf5d 
>   security-admin/db/sqlserver/patches/041-create-role-schema.sql PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/biz/PolicyRefUpdater.java 
> 921dc3736 
>   
> security-admin/src/main/java/org/apache/ranger/biz/RangerPolicyRetriever.java 
> f48a80387 
>   security-admin/src/main/java/org/apache/ranger/biz/RoleDBStore.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/biz/RoleRefUpdater.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/biz/ServiceDBStore.java 
> 35dc9405b 
>   security-admin/src/main/java/org/apache/ranger/common/AppConstants.java 
> 039e4e8d5 
>   security-admin/src/main/java/org/apache/ranger/db/RangerDaoManagerBase.java 
> 979fd6543 
>   security-admin/src/main/java/org/apache/ranger/db/XXPolicyDao.java 
> 5d513bd8b 
>   security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefRoleDao.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/db/XXRoleDao.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/db/XXRoleRefGroupDao.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/db/XXRoleRefRoleDao.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/db/XXRoleRefUserDao.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefRole.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/entity/XXRole.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/entity/XXRoleBase.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/entity/XXRoleRefGroup.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/entity/XXRoleRefRole.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/entity/XXRoleRefUser.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java 
> 734faef3a 
>   security-admin/src/main/java/org/apache/ranger/rest/RoleREST.java 
> PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java 
> 3ff763c71 
>   
> security-admin/src/main/java/org/apache/ranger/service/RangerPolicyServiceBase.java
>  3e1a8e1bf 
>   
> security-admin/src/main/java/org/apache/ranger/service/RangerRoleService.java 
> PRE-CREATION 
>   
> security-admin/src/main/java/org/apache/ranger/service/RangerRoleServiceBase.java
>  PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/view/RangerRoleList.java 
> PRE-CREATION 
>   security-admin/src/main/resources/META-INF/jpa_named_queries.xml e4647b1c9 
>   security-admin/src/main/webapp/scripts/collection_bases/VXRoleListBase.js 
> PRE-CREATION 
>   security-admin/src/main/webapp/scripts/collections/VXRoleList.js 
> PRE-CREATION 
>   security-admin/src/main/webapp/scripts/controllers/Controller.js c4a0b58df 
>   security-admin/src/main/webapp/scripts/model_bases/VXRoleBase.js 
> PRE-CREATION 
>   security-admin/src/main/webapp/scripts/models/VXRole.js PRE-CREATION 
>   security-admin/src/main/webapp/scripts/modules/XALinks.js ab0fe7a23 
>   security-admin/src/main/webapp/scripts/modules/globalize/message/en.js 
> a9287450c 
>   security-admin/src/main/webapp/scripts/routers/Router.js f60e03c21 
>   security-admin/src/main/webapp/scripts/utils/XAEnums.js c6956eafb 
>   security-admin/src/main/webapp/scripts/utils/XAUtils.js 18e86c9cc 
>   security-admin/src/main/webapp/scripts/views/policies/PermissionList.js 
> 0c3824bad 
>   security-admin/src/main/webapp/scripts/views/policies/RangerPolicyCreate.js 
> 8f23e84d3 
>   security-admin/src/main/webapp/scripts/views/policies/RangerPolicyForm.js 
> a1a1311aa 
>   security-admin/src/main/webapp/scripts/views/policies/RangerPolicyRO.js 
> 1af54e18a 
>   
> security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
>  c18cfaa08 
>   security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js 
> 18dba7ace 
>   security-admin/src/main/webapp/scripts/views/reports/OperationDiffDetail.js 
> 4a73c3215 
>   security-admin/src/main/webapp/scripts/views/users/RoleCreate.js 
> PRE-CREATION 
>   security-admin/src/main/webapp/scripts/views/users/RoleForm.js PRE-CREATION 
>   security-admin/src/main/webapp/scripts/views/users/UserTableLayout.js 
> 45b672caf 
>   security-admin/src/main/webapp/styles/xa.css 6ae646dfc 
>   security-admin/src/main/webapp/templates/common/TopNav_tmpl.html 22df5cb8b 
>   security-admin/src/main/webapp/templates/policies/PermissionItem.html 
> d2b401d05 
>   security-admin/src/main/webapp/templates/policies/PermissionList.html 
> 9972d4885 
>   security-admin/src/main/webapp/templates/policies/RangerPolicyRO_tmpl.html 
> e76ad21e4 
>   
> security-admin/src/main/webapp/templates/reports/RoleOperationDiff_tmpl.html 
> PRE-CREATION 
>   
> security-admin/src/main/webapp/templates/reports/RoleUpdateOperationDiff_tmpl.html
>  PRE-CREATION 
>   security-admin/src/main/webapp/templates/users/RoleCreate_tmpl.html 
> PRE-CREATION 
>   security-admin/src/main/webapp/templates/users/RoleForm_tmpl.html 
> PRE-CREATION 
>   security-admin/src/main/webapp/templates/users/UserTableLayout_tmpl.html 
> d99b3b453 
>   security-admin/src/test/java/org/apache/ranger/biz/TestServiceDBStore.java 
> ac9af5eb4 
> 
> 
> Diff: https://reviews.apache.org/r/70629/diff/2/
> 
> 
> Testing
> -------
> 
> - Role CRUD
> - Policy Updates to add/remove roles
> - Logic to authorize access with roles
> - Tracking Service versions with role updates
> 
> 
> Thanks,
> 
> Abhay Kulkarni
> 
>

Reply via email to