This is an automated email from the ASF dual-hosted git repository. madhan pushed a commit to branch RANGER-3923 in repository https://gitbox.apache.org/repos/asf/ranger.git
commit bba84d1d74fb65bbe670f45f886928a7df4e2696 Merge: 444475c6a 3d69ff979 Author: Madhan Neethiraj <mad...@apache.org> AuthorDate: Fri Aug 11 09:46:07 2023 -0700 Merge branch 'master' into RANGER-3923 .../plugin/contextenricher/RangerTagForEval.java | 5 - .../apache/ranger/plugin/model/AuditFilter.java | 5 - .../org/apache/ranger/plugin/model/GroupInfo.java | 5 - .../ranger/plugin/model/RangerBaseModelObject.java | 6 - .../apache/ranger/plugin/model/RangerMetrics.java | 6 - .../ranger/plugin/model/RangerPluginInfo.java | 5 - .../apache/ranger/plugin/model/RangerPolicy.java | 22 -- .../ranger/plugin/model/RangerPolicyDelta.java | 6 - .../org/apache/ranger/plugin/model/RangerRole.java | 7 - .../ranger/plugin/model/RangerSecurityZone.java | 7 - .../plugin/model/RangerSecurityZoneHeaderInfo.java | 6 - .../apache/ranger/plugin/model/RangerService.java | 6 - .../ranger/plugin/model/RangerServiceDef.java | 26 --- .../plugin/model/RangerServiceHeaderInfo.java | 6 - .../ranger/plugin/model/RangerServiceResource.java | 5 - .../ranger/plugin/model/RangerServiceTags.java | 5 - .../org/apache/ranger/plugin/model/RangerTag.java | 5 - .../apache/ranger/plugin/model/RangerTagDef.java | 8 - .../ranger/plugin/model/RangerTagResourceMap.java | 6 - .../plugin/model/RangerValidityRecurrence.java | 10 - .../plugin/model/RangerValiditySchedule.java | 7 - .../ranger/plugin/model/ServiceDeleteResponse.java | 6 - .../org/apache/ranger/plugin/model/UserInfo.java | 5 - .../plugin/policyengine/RangerResourceACLs.java | 9 - .../RangerAbstractResourceMatcher.java | 125 ++++++++--- .../RangerDefaultResourceMatcher.java | 76 ++++--- .../resourcematcher/RangerPathResourceMatcher.java | 239 +++++++++++++++++++-- .../resourcematcher/RangerResourceMatcher.java | 3 + .../resourcematcher/RangerURLResourceMatcher.java | 35 ++- .../plugin/resourcematcher/ResourceMatcher.java | 165 ++++++++++++-- .../plugin/service/ResourceLookupContext.java | 6 - .../ranger/plugin/store/StoredServiceResource.java | 6 - .../ranger/plugin/util/GrantRevokeRequest.java | 6 - .../ranger/plugin/util/GrantRevokeRoleRequest.java | 5 - .../plugin/util/RangerRequestedResources.java | 6 - .../org/apache/ranger/plugin/util/RangerRoles.java | 5 - .../apache/ranger/plugin/util/RangerUserStore.java | 5 - .../apache/ranger/plugin/util/ServicePolicies.java | 12 -- .../org/apache/ranger/plugin/util/ServiceTags.java | 6 - .../RangerAbstractResourceMatcherTest.java | 9 + .../RangerDefaultResourceMatcherTest.java | 132 ++++++++++-- .../RangerPathResourceMatcherTest.java | 73 +++++++ .../RangerURLResourceMatcherTest.java | 73 +++++++ .../java/org/apache/ranger/entity/XXDBBase.java | 2 - .../org/apache/ranger/entity/XXRangerKeyStore.java | 2 - .../apache/ranger/entity/XXRangerMasterKey.java | 4 +- .../client/json/model/KMSSchedulerResponse.java | 12 -- .../client/json/model/YarnSchedulerResponse.java | 12 -- .../java/org/apache/ranger/common/view/VEnum.java | 3 - .../apache/ranger/common/view/VEnumElement.java | 3 - .../java/org/apache/ranger/common/view/VList.java | 2 - .../org/apache/ranger/common/view/VTrxLogAttr.java | 3 - .../apache/ranger/common/view/ViewBaseBean.java | 6 +- .../org/apache/ranger/entity/XXAccessAudit.java | 2 - .../apache/ranger/entity/XXAccessAuditBase.java | 2 - .../org/apache/ranger/entity/XXAccessAuditV4.java | 2 - .../org/apache/ranger/entity/XXAccessAuditV5.java | 2 - .../org/apache/ranger/entity/XXAccessTypeDef.java | 4 +- .../ranger/entity/XXAccessTypeDefGrants.java | 4 +- .../java/org/apache/ranger/entity/XXAsset.java | 2 - .../java/org/apache/ranger/entity/XXAuditMap.java | 2 - .../org/apache/ranger/entity/XXAuthSession.java | 2 - .../apache/ranger/entity/XXContextEnricherDef.java | 4 +- .../apache/ranger/entity/XXCredentialStore.java | 2 - .../java/org/apache/ranger/entity/XXDBBase.java | 2 - .../java/org/apache/ranger/entity/XXDataHist.java | 4 +- .../apache/ranger/entity/XXDataMaskTypeDef.java | 2 - .../java/org/apache/ranger/entity/XXEnumDef.java | 4 +- .../org/apache/ranger/entity/XXEnumElementDef.java | 4 +- .../org/apache/ranger/entity/XXGlobalState.java | 2 - .../apache/ranger/entity/XXGlobalStateBase.java | 2 - .../java/org/apache/ranger/entity/XXGroup.java | 2 - .../org/apache/ranger/entity/XXGroupGroup.java | 2 - .../apache/ranger/entity/XXGroupPermission.java | 5 +- .../java/org/apache/ranger/entity/XXGroupUser.java | 2 - .../java/org/apache/ranger/entity/XXModuleDef.java | 2 - .../java/org/apache/ranger/entity/XXPermMap.java | 2 - .../org/apache/ranger/entity/XXPluginInfo.java | 2 - .../java/org/apache/ranger/entity/XXPolicy.java | 4 +- .../org/apache/ranger/entity/XXPolicyBase.java | 2 - .../apache/ranger/entity/XXPolicyChangeLog.java | 2 - .../apache/ranger/entity/XXPolicyConditionDef.java | 4 +- .../apache/ranger/entity/XXPolicyExportAudit.java | 2 - .../org/apache/ranger/entity/XXPolicyItem.java | 4 +- .../apache/ranger/entity/XXPolicyItemAccess.java | 4 +- .../ranger/entity/XXPolicyItemCondition.java | 4 +- .../ranger/entity/XXPolicyItemDataMaskInfo.java | 2 - .../ranger/entity/XXPolicyItemGroupPerm.java | 4 +- .../ranger/entity/XXPolicyItemRowFilterInfo.java | 2 - .../apache/ranger/entity/XXPolicyItemUserPerm.java | 4 +- .../org/apache/ranger/entity/XXPolicyLabel.java | 2 - .../org/apache/ranger/entity/XXPolicyLabelMap.java | 2 - .../ranger/entity/XXPolicyRefAccessType.java | 4 +- .../apache/ranger/entity/XXPolicyRefCondition.java | 4 +- .../ranger/entity/XXPolicyRefDataMaskType.java | 4 +- .../org/apache/ranger/entity/XXPolicyRefGroup.java | 4 +- .../apache/ranger/entity/XXPolicyRefResource.java | 4 +- .../org/apache/ranger/entity/XXPolicyRefRole.java | 2 - .../org/apache/ranger/entity/XXPolicyRefUser.java | 4 +- .../org/apache/ranger/entity/XXPolicyResource.java | 4 +- .../apache/ranger/entity/XXPolicyResourceMap.java | 4 +- .../ranger/entity/XXPolicyWithAssignedId.java | 2 - .../org/apache/ranger/entity/XXPortalUser.java | 2 - .../org/apache/ranger/entity/XXPortalUserRole.java | 2 - .../apache/ranger/entity/XXRMSMappingProvider.java | 2 - .../apache/ranger/entity/XXRMSNotification.java | 4 +- .../apache/ranger/entity/XXRMSResourceMapping.java | 2 - .../apache/ranger/entity/XXRMSServiceResource.java | 2 - .../java/org/apache/ranger/entity/XXResource.java | 2 - .../org/apache/ranger/entity/XXResourceDef.java | 2 - .../main/java/org/apache/ranger/entity/XXRole.java | 2 - .../java/org/apache/ranger/entity/XXRoleBase.java | 2 - .../org/apache/ranger/entity/XXRoleRefGroup.java | 4 +- .../org/apache/ranger/entity/XXRoleRefRole.java | 4 +- .../org/apache/ranger/entity/XXRoleRefUser.java | 4 +- .../org/apache/ranger/entity/XXSecurityZone.java | 2 - .../apache/ranger/entity/XXSecurityZoneBase.java | 2 - .../ranger/entity/XXSecurityZoneRefGroup.java | 4 +- .../ranger/entity/XXSecurityZoneRefResource.java | 4 +- .../ranger/entity/XXSecurityZoneRefRole.java | 4 +- .../ranger/entity/XXSecurityZoneRefService.java | 4 +- .../ranger/entity/XXSecurityZoneRefTagService.java | 2 - .../ranger/entity/XXSecurityZoneRefUser.java | 2 - .../java/org/apache/ranger/entity/XXService.java | 4 +- .../org/apache/ranger/entity/XXServiceBase.java | 2 - .../apache/ranger/entity/XXServiceConfigDef.java | 4 +- .../apache/ranger/entity/XXServiceConfigMap.java | 4 +- .../org/apache/ranger/entity/XXServiceDef.java | 2 - .../org/apache/ranger/entity/XXServiceDefBase.java | 2 - .../ranger/entity/XXServiceDefWithAssignedId.java | 2 - .../apache/ranger/entity/XXServiceResource.java | 2 - .../ranger/entity/XXServiceResourceElement.java | 2 - .../entity/XXServiceResourceElementValue.java | 2 - .../apache/ranger/entity/XXServiceVersionInfo.java | 2 - .../ranger/entity/XXServiceWithAssignedId.java | 2 - .../main/java/org/apache/ranger/entity/XXTag.java | 2 - .../org/apache/ranger/entity/XXTagAttribute.java | 2 - .../apache/ranger/entity/XXTagAttributeDef.java | 2 - .../org/apache/ranger/entity/XXTagChangeLog.java | 2 - .../java/org/apache/ranger/entity/XXTagDef.java | 2 - .../org/apache/ranger/entity/XXTagResourceMap.java | 2 - .../java/org/apache/ranger/entity/XXTrxLog.java | 2 - .../apache/ranger/entity/XXUgsyncAuditInfo.java | 2 - .../main/java/org/apache/ranger/entity/XXUser.java | 2 - .../org/apache/ranger/entity/XXUserPermission.java | 2 - .../org/apache/ranger/entity/view/VXXTrxLog.java | 2 - .../org/apache/ranger/rest/ServiceRESTUtil.java | 57 ----- .../apache/ranger/view/RangerExportPolicyList.java | 6 - .../apache/ranger/view/RangerExportRoleList.java | 6 - .../apache/ranger/view/RangerPluginInfoList.java | 6 - .../org/apache/ranger/view/RangerPolicyList.java | 6 - .../org/apache/ranger/view/RangerRoleList.java | 6 - .../apache/ranger/view/RangerSecurityZoneList.java | 6 - .../apache/ranger/view/RangerServiceDefList.java | 6 - .../org/apache/ranger/view/RangerServiceList.java | 8 +- .../java/org/apache/ranger/view/VXAccessAudit.java | 3 - .../org/apache/ranger/view/VXAccessAuditList.java | 6 - .../main/java/org/apache/ranger/view/VXAsset.java | 3 - .../java/org/apache/ranger/view/VXAssetList.java | 6 - .../java/org/apache/ranger/view/VXAuditMap.java | 3 - .../org/apache/ranger/view/VXAuditMapList.java | 6 - .../java/org/apache/ranger/view/VXAuditRecord.java | 3 - .../org/apache/ranger/view/VXAuditRecordList.java | 6 - .../java/org/apache/ranger/view/VXAuthSession.java | 3 - .../org/apache/ranger/view/VXAuthSessionList.java | 6 - .../org/apache/ranger/view/VXCredentialStore.java | 3 - .../apache/ranger/view/VXCredentialStoreList.java | 6 - .../java/org/apache/ranger/view/VXDataObject.java | 3 - .../apache/ranger/view/VXFileSyncSourceInfo.java | 5 +- .../main/java/org/apache/ranger/view/VXGroup.java | 3 - .../java/org/apache/ranger/view/VXGroupGroup.java | 3 - .../org/apache/ranger/view/VXGroupGroupList.java | 6 - .../java/org/apache/ranger/view/VXGroupList.java | 6 - .../org/apache/ranger/view/VXGroupPermission.java | 4 - .../apache/ranger/view/VXGroupPermissionList.java | 7 - .../java/org/apache/ranger/view/VXGroupUser.java | 3 - .../org/apache/ranger/view/VXGroupUserInfo.java | 5 +- .../org/apache/ranger/view/VXGroupUserList.java | 6 - .../main/java/org/apache/ranger/view/VXKmsKey.java | 3 - .../java/org/apache/ranger/view/VXKmsKeyList.java | 6 - .../apache/ranger/view/VXLdapSyncSourceInfo.java | 5 +- .../main/java/org/apache/ranger/view/VXLong.java | 3 - .../java/org/apache/ranger/view/VXMessage.java | 3 - .../ranger/view/VXMetricAuditDetailsCount.java | 5 - .../apache/ranger/view/VXMetricPolicyCount.java | 5 - .../view/VXMetricPolicyWithServiceNameCount.java | 5 - .../apache/ranger/view/VXMetricServiceCount.java | 5 - .../ranger/view/VXMetricServiceNameCount.java | 6 - .../apache/ranger/view/VXMetricUserGroupCount.java | 8 +- .../java/org/apache/ranger/view/VXModuleDef.java | 3 - .../org/apache/ranger/view/VXModuleDefList.java | 7 - .../org/apache/ranger/view/VXModulePermission.java | 4 - .../apache/ranger/view/VXModulePermissionList.java | 7 - .../org/apache/ranger/view/VXPasswordChange.java | 3 - .../java/org/apache/ranger/view/VXPermMap.java | 3 - .../java/org/apache/ranger/view/VXPermMapList.java | 6 - .../java/org/apache/ranger/view/VXPermObj.java | 3 - .../java/org/apache/ranger/view/VXPermObjList.java | 6 - .../main/java/org/apache/ranger/view/VXPolicy.java | 3 - .../apache/ranger/view/VXPolicyExportAudit.java | 3 - .../ranger/view/VXPolicyExportAuditList.java | 6 - .../java/org/apache/ranger/view/VXPolicyLabel.java | 3 - .../org/apache/ranger/view/VXPolicyLabelList.java | 6 - .../java/org/apache/ranger/view/VXPolicyList.java | 6 - .../java/org/apache/ranger/view/VXPortalUser.java | 3 - .../org/apache/ranger/view/VXPortalUserList.java | 6 - .../java/org/apache/ranger/view/VXRepository.java | 3 - .../org/apache/ranger/view/VXRepositoryList.java | 6 - .../java/org/apache/ranger/view/VXResource.java | 3 - .../org/apache/ranger/view/VXResourceList.java | 6 - .../java/org/apache/ranger/view/VXResponse.java | 3 - .../main/java/org/apache/ranger/view/VXString.java | 3 - .../java/org/apache/ranger/view/VXStringList.java | 6 - .../main/java/org/apache/ranger/view/VXTrxLog.java | 3 - .../java/org/apache/ranger/view/VXTrxLogList.java | 5 - .../org/apache/ranger/view/VXUgsyncAuditInfo.java | 4 +- .../apache/ranger/view/VXUgsyncAuditInfoList.java | 5 - .../apache/ranger/view/VXUnixSyncSourceInfo.java | 5 +- .../main/java/org/apache/ranger/view/VXUser.java | 3 - .../org/apache/ranger/view/VXUserGroupInfo.java | 5 +- .../java/org/apache/ranger/view/VXUserList.java | 6 - .../org/apache/ranger/view/VXUserPermission.java | 3 - .../apache/ranger/view/VXUserPermissionList.java | 7 - .../react-webapp/src/components/Editable.jsx | 2 +- .../main/webapp/react-webapp/src/utils/XAUtils.js | 10 +- .../src/views/AuditEvent/AdminLogs/PolicyLogs.jsx | 6 +- .../AuditEvent/AdminLogs/PolicyViewDetails.jsx | 6 +- .../views/PolicyListing/PolicyPermissionItem.jsx | 4 +- .../src/views/SecurityZone/ZoneListing.jsx | 2 +- .../react-webapp/src/views/SideBar/SideBarBody.jsx | 22 +- .../UserGroupRoleListing/UserGroupRoleListing.jsx | 2 +- .../UserGroupRoleListing/role_details/RoleForm.jsx | 4 +- .../role_details/RoleListing.jsx | 2 +- .../tagsync/source/atlas/AtlasTagSource.java | 2 +- .../model/UsersGroupRoleAssignments.java | 5 +- 235 files changed, 898 insertions(+), 1062 deletions(-) diff --cc agents-common/src/main/java/org/apache/ranger/plugin/util/ServicePolicies.java index f6a8c7efd,dd64a6767..deaf524b1 --- a/agents-common/src/main/java/org/apache/ranger/plugin/util/ServicePolicies.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/util/ServicePolicies.java @@@ -27,10 -28,7 +27,6 @@@ import java.util.HashMap import java.util.List; import java.util.Map; - import javax.xml.bind.annotation.XmlAccessType; - import javax.xml.bind.annotation.XmlAccessorType; - import javax.xml.bind.annotation.XmlRootElement; - -import org.apache.commons.collections.MapUtils; import org.apache.ranger.authorization.utils.StringUtil; import org.apache.ranger.plugin.model.RangerPolicy; import org.apache.ranger.plugin.model.RangerPolicyDelta; @@@ -44,10 -45,9 +40,8 @@@ import org.codehaus.jackson.map.annotat @JsonAutoDetect(fieldVisibility=Visibility.ANY) @JsonSerialize(include=JsonSerialize.Inclusion.NON_EMPTY) @JsonIgnoreProperties(ignoreUnknown=true) - @XmlRootElement - @XmlAccessorType(XmlAccessType.FIELD) public class ServicePolicies implements java.io.Serializable { private static final long serialVersionUID = 1L; - private static final Logger LOG = LoggerFactory.getLogger(ServicePolicies.class); private String serviceName; private Long serviceId; @@@ -375,142 -354,6 +367,140 @@@ } } + @JsonAutoDetect(fieldVisibility=Visibility.ANY) + @JsonSerialize(include=JsonSerialize.Inclusion.NON_EMPTY) + @JsonIgnoreProperties(ignoreUnknown=true) - @XmlRootElement - @XmlAccessorType(XmlAccessType.FIELD) + public static class GdsPolicies implements java.io.Serializable { + private static final long serialVersionUID = 1L; + + private String serviceName; + private Long serviceId; + private Long policyVersion; + private Date policyUpdateTime; + private List<RangerPolicy> policies; + private RangerServiceDef serviceDef; + private String auditMode = RangerPolicyEngine.AUDIT_DEFAULT; + private Map<String, String> serviceConfig; + + /** + * @return the serviceName + */ + public String getServiceName() { + return serviceName; + } + /** + * @param serviceName the serviceName to set + */ + public void setServiceName(String serviceName) { + this.serviceName = serviceName; + } + /** + * @return the serviceId + */ + public Long getServiceId() { + return serviceId; + } + /** + * @param serviceId the serviceId to set + */ + public void setServiceId(Long serviceId) { + this.serviceId = serviceId; + } + /** + * @return the policyVersion + */ + public Long getPolicyVersion() { + return policyVersion; + } + /** + * @param policyVersion the policyVersion to set + */ + public void setPolicyVersion(Long policyVersion) { + this.policyVersion = policyVersion; + } + /** + * @return the policyUpdateTime + */ + public Date getPolicyUpdateTime() { + return policyUpdateTime; + } + /** + * @param policyUpdateTime the policyUpdateTime to set + */ + public void setPolicyUpdateTime(Date policyUpdateTime) { + this.policyUpdateTime = policyUpdateTime; + } + /** + * @return the policies + */ + public List<RangerPolicy> getPolicies() { + return policies; + } + /** + * @param policies the policies to set + */ + public void setPolicies(List<RangerPolicy> policies) { + this.policies = policies; + } + /** + * @return the serviceDef + */ + public RangerServiceDef getServiceDef() { + return serviceDef; + } + /** + * @param serviceDef the serviceDef to set + */ + public void setServiceDef(RangerServiceDef serviceDef) { + this.serviceDef = serviceDef; + } + + public String getAuditMode() { + return auditMode; + } + + public void setAuditMode(String auditMode) { + this.auditMode = auditMode; + } + + public Map<String, String> getServiceConfig() { + return serviceConfig; + } + + public void setServiceConfig(Map<String, String> serviceConfig) { + this.serviceConfig = serviceConfig; + } + + public void dedupStrings(Map<String, String> strTbl) { + serviceName = StringUtil.dedupString(serviceName, strTbl); + auditMode = StringUtil.dedupString(auditMode, strTbl); + serviceConfig = StringUtil.dedupStringsMap(serviceConfig, strTbl); + + if (policies != null) { + for (RangerPolicy policy : policies) { + policy.dedupStrings(strTbl); + } + } + + if (serviceDef != null) { + serviceDef.dedupStrings(strTbl); + } + } + + @Override + public String toString() { + return "serviceName=" + serviceName + ", " + + "serviceId=" + serviceId + ", " + + "policyVersion=" + policyVersion + ", " + + "policyUpdateTime=" + policyUpdateTime + ", " + + "policies=" + policies + ", " + + "serviceDef=" + serviceDef + ", " + + "auditMode=" + auditMode + + "serviceConfig=" + serviceConfig + ; + } + } + @JsonAutoDetect(fieldVisibility = Visibility.ANY) @JsonSerialize(include = JsonSerialize.Inclusion.NON_EMPTY) @JsonIgnoreProperties(ignoreUnknown = true)