authorization check for auth topics 90/85090/1
authorsunil.unnava <sunil.unnava@att.com>
Thu, 11 Apr 2019 16:13:15 +0000 (12:13 -0400)
committersunil.unnava <sunil.unnava@att.com>
Thu, 11 Apr 2019 16:13:55 +0000 (12:13 -0400)
Issue-ID: DMAAP-1160
Change-Id: Icdbaefecf8f07a2b0ad3fcc9b243df1072dd8579
Signed-off-by: sunil.unnava <sunil.unnava@att.com>
pom.xml
src/main/java/org/onap/dmaap/dmf/mr/service/impl/EventsServiceImpl.java
version.properties

diff --git a/pom.xml b/pom.xml
index cb47037..2a18ecc 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -14,7 +14,7 @@
        <modelVersion>4.0.0</modelVersion>
        <groupId>org.onap.dmaap.messagerouter.msgrtr</groupId>
        <artifactId>msgrtr</artifactId>
-       <version>1.1.15-SNAPSHOT</version>
+       <version>1.1.16-SNAPSHOT</version>
        <packaging>jar</packaging>
        <name>dmaap-messagerouter-msgrtr</name>
        <description>Message Router - Restful interface built for kafka</description>
index 2f436ec..5ce45ac 100644 (file)
@@ -204,6 +204,14 @@ public class EventsServiceImpl implements EventsService {
                                "metrics.send.cambria.topic");
                if (null == metricTopicname)
                        metricTopicname = "msgrtr.apinode.metrics.dmaap";
+               
+               boolean topicNameEnforced = false;
+               String topicNameStd = null;
+               topicNameStd = com.att.ajsc.beans.PropertiesMapBean.getProperty(CambriaConstants.msgRtr_prop,
+                               "enforced.topic.name.AAF");
+               if (null != topicNameStd && topic.startsWith(topicNameStd)) {
+                       topicNameEnforced = true;
+               }
 
                if (null == ctx.getRequest().getHeader("Authorization") && !topic.equalsIgnoreCase(metricTopicname)) {
                        if (null != metatopic.getOwner() && !("".equals(metatopic.getOwner()))) {
@@ -212,7 +220,7 @@ public class EventsServiceImpl implements EventsService {
                        }
                }
                // if headers are not provided then user will be null
-               if (user == null && null != ctx.getRequest().getHeader("Authorization")) {
+               if (topicNameEnforced&&user == null && null != ctx.getRequest().getHeader("Authorization")) {
                        // the topic name will be sent by the client
                        
                        DMaaPAAFAuthenticator aaf = new DMaaPAAFAuthenticatorImpl();
index aabaad9..2740ee4 100644 (file)
@@ -27,7 +27,7 @@
 
 major=1
 minor=1
-patch=15
+patch=16
 
 base_version=${major}.${minor}.${patch}