Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5addd95

Browse files
author
Ernesto
committed
Merge pull request #35 from feaster83/master
Display original health page when authorized user
2 parents fdbcfee + b6d759e commit 5addd95

File tree

1 file changed

+24
-22
lines changed

1 file changed

+24
-22
lines changed

‎src/main/java/com/asquera/elasticsearch/plugins/http/HttpBasicServer.java‎

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,30 @@
11
package com.asquera.elasticsearch.plugins.http;
22

3-
import org.elasticsearch.http.*;
3+
import com.asquera.elasticsearch.plugins.http.auth.Client;
4+
import com.asquera.elasticsearch.plugins.http.auth.InetAddressWhitelist;
5+
import com.asquera.elasticsearch.plugins.http.auth.ProxyChains;
6+
import com.asquera.elasticsearch.plugins.http.auth.XForwardedFor;
7+
import org.elasticsearch.common.Base64;
8+
import org.elasticsearch.common.inject.Inject;
9+
import org.elasticsearch.common.logging.Loggers;
410
import org.elasticsearch.common.settings.Settings;
511
import org.elasticsearch.env.Environment;
12+
import org.elasticsearch.http.HttpChannel;
13+
import org.elasticsearch.http.HttpRequest;
14+
import org.elasticsearch.http.HttpServer;
15+
import org.elasticsearch.http.HttpServerTransport;
616
import org.elasticsearch.node.service.NodeService;
17+
import org.elasticsearch.rest.BytesRestResponse;
718
import org.elasticsearch.rest.RestController;
8-
import org.elasticsearch.common.inject.Inject;
9-
import org.elasticsearch.common.Base64;
1019
import org.elasticsearch.rest.RestRequest;
11-
12-
import static org.elasticsearch.rest.RestStatus.*;
20+
import org.elasticsearch.rest.RestRequest.Method;
1321

1422
import java.io.IOException;
1523
import java.net.InetAddress;
1624
import java.net.InetSocketAddress;
1725

18-
import org.elasticsearch.common.logging.Loggers;
19-
import org.elasticsearch.rest.BytesRestResponse;
20-
import org.elasticsearch.rest.RestRequest.Method;
21-
22-
import com.asquera.elasticsearch.plugins.http.auth.Client;
23-
import com.asquera.elasticsearch.plugins.http.auth.InetAddressWhitelist;
24-
import com.asquera.elasticsearch.plugins.http.auth.ProxyChains;
25-
import com.asquera.elasticsearch.plugins.http.auth.XForwardedFor;
26+
import static org.elasticsearch.rest.RestStatus.OK;
27+
import static org.elasticsearch.rest.RestStatus.UNAUTHORIZED;
2628

2729
// # possible http config
2830
// http.basic.user: admin
@@ -71,18 +73,18 @@ public class HttpBasicServer extends HttpServer {
7173
@Override
7274
public void internalDispatchRequest(final HttpRequest request, final HttpChannel channel) {
7375
if (log) {
74-
logRequest(request);
76+
logRequest(request);
7577
}
76-
// allow health check even without authorization
77-
if (healthCheck(request)) {
78-
channel.sendResponse(new BytesRestResponse(OK, "{\"OK\":{}}"));
79-
} else if (authorized(request)) {
78+
79+
if (authorized(request)) {
8080
super.internalDispatchRequest(request, channel);
81+
} else if (healthCheck(request)) { // display custom health check page when unauthorized (do not display too much server info)
82+
channel.sendResponse(new BytesRestResponse(OK, "{\"OK\":{}}"));
8183
} else {
82-
logUnAuthorizedRequest(request);
83-
BytesRestResponse response = new BytesRestResponse(UNAUTHORIZED, "Authentication Required");
84-
response.addHeader("WWW-Authenticate", "Basic realm=\"Restricted\"");
85-
channel.sendResponse(response);
84+
logUnAuthorizedRequest(request);
85+
BytesRestResponse response = new BytesRestResponse(UNAUTHORIZED, "Authentication Required");
86+
response.addHeader("WWW-Authenticate", "Basic realm=\"Restricted\"");
87+
channel.sendResponse(response);
8688
}
8789
}
8890

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /