This is an automated email from the ASF dual-hosted git repository.
dhavalshah9131 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/master by this push:
new c4254ab9b RANGER-5315: Enhance Audit Log Filters to Support Resource
Name Exclusions (#663)
c4254ab9b is described below
commit c4254ab9b4c29ff0b4a294dc0c019b06ef71d83a
Author: Rakesh Gupta <[email protected]>
AuthorDate: Fri Sep 12 15:13:07 2025 +0530
RANGER-5315: Enhance Audit Log Filters to Support Resource Name Exclusions
(#663)
---
.../src/main/java/org/apache/ranger/AccessAuditsService.java | 1 +
security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java | 1 +
.../main/webapp/react-webapp/src/views/AuditEvent/AccessLogs.jsx | 6 ++++++
.../src/test/java/org/apache/ranger/rest/TestAssetREST.java | 4 ++--
4 files changed, 10 insertions(+), 2 deletions(-)
diff --git
a/security-admin/src/main/java/org/apache/ranger/AccessAuditsService.java
b/security-admin/src/main/java/org/apache/ranger/AccessAuditsService.java
index 70270673a..32d6f1bea 100644
--- a/security-admin/src/main/java/org/apache/ranger/AccessAuditsService.java
+++ b/security-admin/src/main/java/org/apache/ranger/AccessAuditsService.java
@@ -71,6 +71,7 @@ public AccessAuditsService() {
*/
searchFields.add(new SearchField("-repoType", "-repoType",
SearchField.DATA_TYPE.INTEGER, SearchField.SEARCH_TYPE.FULL));
searchFields.add(new SearchField("-requestUser", "-reqUser",
SearchField.DATA_TYPE.STRING, SearchField.SEARCH_TYPE.FULL));
+ searchFields.add(new SearchField("excludeResourceName", "-resource",
SearchField.DATA_TYPE.STRING, SearchField.SEARCH_TYPE.PARTIAL));
searchFields.add(new SearchField("resourceType", "resType",
SearchField.DATA_TYPE.STRING, SearchField.SEARCH_TYPE.FULL));
searchFields.add(new SearchField("reason", "reason",
SearchField.DATA_TYPE.STRING, SearchField.SEARCH_TYPE.FULL));
searchFields.add(new SearchField("action", "action",
SearchField.DATA_TYPE.STRING, SearchField.SEARCH_TYPE.FULL));
diff --git a/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
b/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
index 46ee557c1..d3d0dde72 100644
--- a/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
+++ b/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
@@ -552,6 +552,7 @@ public VXAccessAuditList getAccessLogs(@Context
HttpServletRequest request, @Que
searchUtil.extractStringList(request, searchCriteria, "excludeUser",
"Exclude Users", "-requestUser", null, StringUtil.VALIDATION_TEXT);
searchUtil.extractString(request, searchCriteria, "requestData",
"Request Data", StringUtil.VALIDATION_TEXT);
searchUtil.extractString(request, searchCriteria, "resourcePath",
"Resource Name", StringUtil.VALIDATION_TEXT);
+ searchUtil.extractString(request, searchCriteria,
"excludeResourceName", "Exclude Resource Name", StringUtil.VALIDATION_TEXT);
searchUtil.extractString(request, searchCriteria, "clientIP", "Client
IP", StringUtil.VALIDATION_TEXT);
searchUtil.extractString(request, searchCriteria, "resourceType",
"Resource Type", StringUtil.VALIDATION_TEXT);
searchUtil.extractString(request, searchCriteria,
"excludeServiceUser", "Exclude Service User", StringUtil.VALIDATION_TEXT);
diff --git
a/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AccessLogs.jsx
b/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AccessLogs.jsx
index 9af635448..858de6c2e 100644
---
a/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AccessLogs.jsx
+++
b/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AccessLogs.jsx
@@ -1009,6 +1009,12 @@ function Access() {
urlLabel: "zoneName",
type: "textoptions",
options: getZones
+ },
+ {
+ category: "excludeResourceName",
+ label: "Exclude Resource Name",
+ urlLabel: "excludeResourceName",
+ type: "text"
}
];
diff --git
a/security-admin/src/test/java/org/apache/ranger/rest/TestAssetREST.java
b/security-admin/src/test/java/org/apache/ranger/rest/TestAssetREST.java
index 04ef82613..b651c02db 100644
--- a/security-admin/src/test/java/org/apache/ranger/rest/TestAssetREST.java
+++ b/security-admin/src/test/java/org/apache/ranger/rest/TestAssetREST.java
@@ -569,7 +569,7 @@ public void testGetAccessLogs() {
Mockito.verify(msBizUtil).isKeyAdmin();
Mockito.verify(assetMgr).getAccessLogs(searchCriteria);
Mockito.verify(daoManager).getXXServiceDef();
- Mockito.verify(searchUtil,
Mockito.times(15)).extractString(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString(), Mockito.nullable(String.class));
+ Mockito.verify(searchUtil,
Mockito.times(16)).extractString(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString(), Mockito.nullable(String.class));
Mockito.verify(searchUtil, Mockito.times(4)).extractInt(Mockito.any(),
Mockito.any(), Mockito.anyString(), Mockito.anyString());
Mockito.verify(searchUtil,
Mockito.times(2)).extractDate(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString(), Mockito.anyString());
Mockito.verify(searchUtil).extractLong(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString());
@@ -604,7 +604,7 @@ public void testGetAccessLogsForKms() {
Mockito.verify(msBizUtil).isKeyAdmin();
Mockito.verify(assetMgr).getAccessLogs(searchCriteria);
Mockito.verify(daoManager).getXXServiceDef();
- Mockito.verify(searchUtil,
Mockito.times(15)).extractString(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString(), Mockito.nullable(String.class));
+ Mockito.verify(searchUtil,
Mockito.times(16)).extractString(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString(), Mockito.nullable(String.class));
Mockito.verify(searchUtil, Mockito.times(4)).extractInt(Mockito.any(),
Mockito.any(), Mockito.anyString(), Mockito.anyString());
Mockito.verify(searchUtil,
Mockito.times(2)).extractDate(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString(), Mockito.anyString());
Mockito.verify(searchUtil).extractLong(Mockito.any(), Mockito.any(),
Mockito.anyString(), Mockito.anyString());