YARN-9334. Allow YARN Service client to send SPNEGO challenge header when authentication type is not simple.

Contributed by Billie Rinaldi

(cherry picked from commit 04b228e43b728d574d7ad97330aa4218cb7f8bf8)
This commit is contained in:
Eric Yang 2019-02-27 18:47:14 -05:00 committed by Billie Rinaldi
parent 7575e3090d
commit 3f3548b66a

View File

@ -282,11 +282,10 @@ private Builder getApiClient() throws IOException {
private Builder getApiClient(String requestPath)
throws IOException {
Client client = Client.create(getClientConfig());
Configuration conf = getConfig();
client.setChunkedEncodingSize(null);
Builder builder = client
.resource(requestPath).type(MediaType.APPLICATION_JSON);
if (conf.get("hadoop.http.authentication.type").equals("kerberos")) {
if (UserGroupInformation.isSecurityEnabled()) {
try {
URI url = new URI(requestPath);
String challenge = generateToken(url.getHost());