You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2018/04/11 12:28:32 UTC
[10/10] ignite git commit: IGNITE-8201 WIP.
IGNITE-8201 WIP.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3780ac0a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3780ac0a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3780ac0a
Branch: refs/heads/ignite-8201
Commit: 3780ac0a09198e2918206d23ee515a2fe522352c
Parents: fe21ed5
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Wed Apr 11 19:28:11 2018 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Wed Apr 11 19:28:11 2018 +0700
----------------------------------------------------------------------
...ettyRestProcessorAuthenticationSelfTest.java | 43 ++++++++++----------
.../http/jetty/GridJettyRestHandler.java | 8 +++-
2 files changed, 28 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3780ac0a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAuthenticationSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAuthenticationSelfTest.java b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAuthenticationSelfTest.java
index 145d7e9..1536d9d 100644
--- a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAuthenticationSelfTest.java
+++ b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAuthenticationSelfTest.java
@@ -41,12 +41,6 @@ public class JettyRestProcessorAuthenticationSelfTest extends JettyRestProcessor
private static final String DFLT_PWD = "ignite";
/** */
- private String user = DFLT_USER;
-
- /** */
- private String pwd = DFLT_PWD;
-
- /** */
private String tok = "";
/** {@inheritDoc} */
@@ -60,8 +54,22 @@ public class JettyRestProcessorAuthenticationSelfTest extends JettyRestProcessor
@Override protected void beforeTest() throws Exception {
super.beforeTest();
- user = DFLT_USER;
- pwd = DFLT_PWD;
+ // Authenticate and extract token.
+ if (F.isEmpty(tok)) {
+ String ret = content(null, GridRestCommand.AUTHENTICATE,
+ "user", DFLT_USER,
+ "password", DFLT_PWD);
+
+ int p1 = ret.indexOf("sessionToken");
+ int p2 = ret.indexOf('"', p1 + 16);
+
+ tok = ret.substring(p1 + 15, p2);
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean securityEnabled() {
+ return true;
}
/** {@inheritDoc} */
@@ -104,14 +112,8 @@ public class JettyRestProcessorAuthenticationSelfTest extends JettyRestProcessor
@Override protected String restUrl() {
String url = super.restUrl();
- if (!F.isEmpty(user)) {
- url += "user=" + user;
-
- if (!F.isEmpty(pwd))
- url += "&password=" + pwd;
-
- url += '&';
- }
+ if (!F.isEmpty(tok))
+ url += "sessionToken=" + tok + "&";
return url;
}
@@ -122,19 +124,18 @@ public class JettyRestProcessorAuthenticationSelfTest extends JettyRestProcessor
public void testAuthenticationCommand() throws Exception {
String ret = content(null, GridRestCommand.AUTHENTICATE);
- assertResponseContainsError(ret, "The user name or password is incorrect");
+ assertResponseSucceeded(ret, false);
}
/**
* @throws Exception If failed.
*/
- public void testMissingCredentials() throws Exception {
- user = null;
- pwd = null;
+ public void testMissingSessionToken() throws Exception {
+ tok = null;
String ret = content(null, GridRestCommand.VERSION);
- assertResponseSucceeded(ret, false);
+ assertResponseContainsError(ret, "The user name or password is incorrect");
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/3780ac0a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
----------------------------------------------------------------------
diff --git a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
index e70ef6a..7f20dca 100644
--- a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
+++ b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
@@ -69,6 +69,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import org.jetbrains.annotations.Nullable;
import static org.apache.ignite.internal.client.GridClientCacheFlag.KEEP_BINARIES_MASK;
+import static org.apache.ignite.internal.processors.rest.GridRestCommand.AUTHENTICATE;
import static org.apache.ignite.internal.processors.rest.GridRestCommand.CACHE_CONTAINS_KEYS;
import static org.apache.ignite.internal.processors.rest.GridRestCommand.CACHE_GET_ALL;
import static org.apache.ignite.internal.processors.rest.GridRestCommand.CACHE_PUT_ALL;
@@ -852,8 +853,11 @@ public class GridJettyRestHandler extends AbstractHandler {
restReq.command(cmd);
- if (!credentials(params, USER_PARAM, PWD_PARAM, restReq))
- credentials(params, IGNITE_LOGIN_PARAM, IGNITE_PASSWORD_PARAM, restReq);
+ // Check credentials only for AUTHENTICATE command.
+ if (cmd == AUTHENTICATE) {
+ if (!credentials(params, USER_PARAM, PWD_PARAM, restReq))
+ credentials(params, IGNITE_LOGIN_PARAM, IGNITE_PASSWORD_PARAM, restReq);
+ }
String clientId = (String)params.get("clientId");