You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@atlas.apache.org by sv...@apache.org on 2017/01/12 07:59:58 UTC
incubator-atlas git commit: Add exclusion mechanism for Atlas audit
mechanism
Repository: incubator-atlas
Updated Branches:
refs/heads/master 384c33585 -> 9683c1170
Add exclusion mechanism for Atlas audit mechanism
Project: http://git-wip-us.apache.org/repos/asf/incubator-atlas/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-atlas/commit/9683c117
Tree: http://git-wip-us.apache.org/repos/asf/incubator-atlas/tree/9683c117
Diff: http://git-wip-us.apache.org/repos/asf/incubator-atlas/diff/9683c117
Branch: refs/heads/master
Commit: 9683c1170e4455eb69ace90d3d92bc57e65eea60
Parents: 384c335
Author: Neeru Gupta <gu...@us.ibm.com>
Authored: Thu Jan 12 13:29:39 2017 +0530
Committer: Vimal Sharma <sv...@apache.org>
Committed: Thu Jan 12 13:29:39 2017 +0530
----------------------------------------------------------------------
release-log.txt | 2 ++
.../apache/atlas/util/AtlasRepositoryConfiguration.java | 6 ++++--
.../java/org/apache/atlas/web/filters/AuditFilter.java | 11 ++++++++---
.../org/apache/atlas/web/filters/AuditFilterTest.java | 7 +++++++
4 files changed, 21 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/9683c117/release-log.txt
----------------------------------------------------------------------
diff --git a/release-log.txt b/release-log.txt
index ad220fa..497ad9a 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -9,6 +9,8 @@ ATLAS-1060 Add composite indexes for exact match performance improvements for al
ATLAS-1127 Modify creation and modification timestamps to Date instead of Long(sumasai)
ALL CHANGES:
+ATLAS-1391 Add exclusion mechanism for Atlas audit mechanism (guptaneeru via svimal2106)
+ATLAS-1280 Atlas changes to support Hive hook for Hive2 (mneethiraj via svimal2106)
ATLAS-1432 Responsive loader and css changes (kevalbhatt via mneethiraj)
ATLAS-1434 Updated typename validation to allow "." for classifications (ashutoshm via mneethiraj)
ATLAS-1435 include common attributes in v2 entity API response (svimal2106 via mneethiraj)
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/9683c117/repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java
----------------------------------------------------------------------
diff --git a/repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java b/repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java
index a8e246f..ea0e670 100644
--- a/repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java
+++ b/repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java
@@ -102,13 +102,15 @@ public class AtlasRepositoryConfiguration {
* Get the list of operations which are configured to be skipped from auditing
* Valid format is HttpMethod:URL eg: GET:Version
* @return list of string
+ * @throws AtlasException
*/
- public static List<String> getAuditExcludedOperations(Configuration config) {
+ public static List<String> getAuditExcludedOperations(Configuration config) throws AtlasException {
if (config == null) {
try {
config = ApplicationProperties.get();
} catch (AtlasException e) {
LOG.error(" Error reading operations for auditing ", e);
+ throw e;
}
}
if (skippedOperations == null) {
@@ -130,7 +132,7 @@ public class AtlasRepositoryConfiguration {
return skippedOperations;
}
- public static boolean isExcludedFromAudit(Configuration config, String httpMethod, String httpUrl) {
+ public static boolean isExcludedFromAudit(Configuration config, String httpMethod, String httpUrl) throws AtlasException {
if (getAuditExcludedOperations(config).size() > 0) {
return getAuditExcludedOperations(config).contains(httpMethod.toLowerCase() + SEPARATOR + httpUrl.toLowerCase());
} else {
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/9683c117/webapp/src/main/java/org/apache/atlas/web/filters/AuditFilter.java
----------------------------------------------------------------------
diff --git a/webapp/src/main/java/org/apache/atlas/web/filters/AuditFilter.java b/webapp/src/main/java/org/apache/atlas/web/filters/AuditFilter.java
index 62b4756..030788a 100755
--- a/webapp/src/main/java/org/apache/atlas/web/filters/AuditFilter.java
+++ b/webapp/src/main/java/org/apache/atlas/web/filters/AuditFilter.java
@@ -19,11 +19,13 @@
package org.apache.atlas.web.filters;
import com.google.inject.Singleton;
+
import org.apache.atlas.AtlasClient;
+import org.apache.atlas.AtlasException;
import org.apache.atlas.RequestContext;
import org.apache.atlas.metrics.Metrics;
-import org.apache.atlas.util.AtlasRepositoryConfiguration;
import org.apache.commons.configuration.Configuration;
+import org.apache.atlas.util.AtlasRepositoryConfiguration;
import org.apache.atlas.web.util.DateTimeHelper;
import org.apache.atlas.web.util.Servlets;
import org.slf4j.Logger;
@@ -40,7 +42,6 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Date;
-import java.util.List;
import java.util.UUID;
/**
@@ -126,7 +127,11 @@ public class AuditFilter implements Filter {
}
boolean isOperationExcludedFromAudit(String requestHttpMethod, String requestOperation, Configuration config) {
- return AtlasRepositoryConfiguration.isExcludedFromAudit(config, requestHttpMethod, requestOperation);
+ try {
+ return AtlasRepositoryConfiguration.isExcludedFromAudit(config, requestHttpMethod, requestOperation);
+ } catch (AtlasException e) {
+ return false;
+ }
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/9683c117/webapp/src/test/java/org/apache/atlas/web/filters/AuditFilterTest.java
----------------------------------------------------------------------
diff --git a/webapp/src/test/java/org/apache/atlas/web/filters/AuditFilterTest.java b/webapp/src/test/java/org/apache/atlas/web/filters/AuditFilterTest.java
index 622b4ca..962f21a 100644
--- a/webapp/src/test/java/org/apache/atlas/web/filters/AuditFilterTest.java
+++ b/webapp/src/test/java/org/apache/atlas/web/filters/AuditFilterTest.java
@@ -115,4 +115,11 @@ public class AuditFilterTest {
verify(filterChain).doFilter(servletRequest, servletResponse);
}
+ @Test
+ public void testNullConfig() {
+ AtlasRepositoryConfiguration.resetExcludedOperations();
+ AuditFilter auditFilter = new AuditFilter();
+ assertFalse(auditFilter.isOperationExcludedFromAudit("GET", "Version", null));
+ }
+
}