update getBasicAuthUserName 92/97692/2
authorSmokowski, Kevin (ks6305) <kevin.smokowski@att.com>
Tue, 29 Oct 2019 15:54:42 +0000 (15:54 +0000)
committerKevin Smokowski <kevin.smokowski@att.com>
Wed, 30 Oct 2019 13:04:59 +0000 (13:04 +0000)
prevent excess error throwing in getBasicAuthUserName

Issue-ID: LOG-1184
Signed-off-by: Smokowski, Kevin (ks6305) <kevin.smokowski@att.com>
Change-Id: I226185ef19525095dbb9e5f480e43bd7b087bf8f

reference/logging-filter/logging-filter-base/src/main/java/org/onap/logging/filter/base/MDCSetup.java
reference/logging-filter/logging-filter-base/src/test/java/org/onap/logging/filter/base/MDCSetupTest.java

index d0caa46..a900968 100644 (file)
@@ -248,7 +248,7 @@ public class MDCSetup {
 
     protected String getBasicAuthUserName(SimpleMap headers) {
         String encodedAuthorizationValue = headers.get(HttpHeaders.AUTHORIZATION);
-        if (encodedAuthorizationValue != null) {
+        if (encodedAuthorizationValue != null && encodedAuthorizationValue.startsWith("Basic")) {
             try {
                 // This will strip the word Basic and single space
                 encodedAuthorizationValue = encodedAuthorizationValue.substring(6);
index 22ab9c3..bdf8bd0 100644 (file)
@@ -190,6 +190,18 @@ public class MDCSetupTest extends MDCSetup {
         assertEquals("Bad Gateway", MDC.get(ONAPLogConstants.MDCs.RESPONSE_DESCRIPTION));
     }
 
+    @Test
+    public void setMDCPartnerNameBearerToken() {
+        MultivaluedMap<String, String> headerMap = new MultivaluedHashMap<>();
+        String value = "Bearer some-compex-token";
+        headerMap.putSingle(HttpHeaders.AUTHORIZATION, value);
+        SimpleMap headers = new SimpleJaxrsHeadersMap(headerMap);
+
+        setMDCPartnerName(headers);
+
+        assertEquals(Constants.DefaultValues.UNKNOWN, MDC.get(ONAPLogConstants.MDCs.PARTNER_NAME));
+    }
+
     @Test
     public void setMDCPartnerNameFromBasicAuth() {
         MultivaluedMap<String, String> headerMap = new MultivaluedHashMap<>();