@@ -63,7 +63,7 @@ public class HttpBasicServer extends HttpServer {
63
63
@ Override
64
64
public void internalDispatchRequest (final HttpRequest request , final HttpChannel channel ) {
65
65
if (log )
66
- logger .info ("Authorization {}, host {}, xforward {}, path {}, isInWhitelist {}, Client-IP {}, X-Client-IP {}" ,
66
+ logger .info ("Authorization: {}, host: {}, xforward: {}, path: {}, isInWhitelist: {}, Client-IP: {}, X-Client-IP: {}" ,
67
67
request .header ("Authorization" ), request .header ("host" ),
68
68
request .header (xForwardFor ), request .path (), isInIPWhitelist (request ),
69
69
request .header ("X-Client-IP" ), request .header ("Client-IP" ));
@@ -75,8 +75,8 @@ public void internalDispatchRequest(final HttpRequest request, final HttpChannel
75
75
super .internalDispatchRequest (request , channel );
76
76
} else {
77
77
String addr = getAddress (request );
78
- Loggers .getLogger (getClass ()).error ("UNAUTHORIZED type {}, address {}, path {}, request {}, content {}" ,
79
- request .method (), addr , request .path (), request.params (), request .content ().toUtf8 ());
78
+ Loggers .getLogger (getClass ()).error ("UNAUTHORIZED type: {}, address: {}, path: {}, request: {}, content:{}, credentials: {}" ,
79
+ request .method (), addr , request .path (), request .params (), request .content ().toUtf8 (), getDecoded ( request ) );
80
80
channel .sendResponse (new StringRestResponse (UNAUTHORIZED , "Authentication Required" ));
81
81
}
82
82
}
@@ -86,15 +86,19 @@ private boolean healthCheck(final HttpRequest request) {
86
86
return (request .method () == RestRequest .Method .GET ) && path .equals ("/" );
87
87
}
88
88
89
- public String getDecoded (HttpRequest request ) throws IOException {
89
+ public String getDecoded (HttpRequest request ) {
90
90
String authHeader = request .header ("Authorization" );
91
91
if (authHeader == null )
92
92
return "" ;
93
93
94
94
String [] split = authHeader .split (" " , 2 );
95
95
if (split .length != 2 || !split [0 ].equals ("Basic" ))
96
96
return "" ;
97
- return new String (Base64 .decode (split [1 ]));
97
+ try {
98
+ return new String (Base64 .decode (split [1 ]));
99
+ } catch (IOException ex ) {
100
+ throw new RuntimeException (ex );
101
+ }
98
102
}
99
103
100
104
private boolean authBasic (final HttpRequest request ) {
@@ -108,7 +112,7 @@ private boolean authBasic(final HttpRequest request) {
108
112
if (this .user .equals (givenUser ) && this .password .equals (givenPass ))
109
113
return true ;
110
114
}
111
- } catch (IOException e ) {
115
+ } catch (Exception e ) {
112
116
logger .warn ("Retrieving of user and password failed for " + decoded + " ," + e .getMessage ());
113
117
}
114
118
return false ;
0 commit comments