summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/cms/client
diff options
context:
space:
mode:
authorEndi Sukma Dewata <edewata@redhat.com>2012-07-07 00:14:13 -0500
committerEndi Sukma Dewata <edewata@redhat.com>2012-07-30 11:21:58 -0500
commit2d427ce0008fb43ae9f6c02301ce6793a42904b9 (patch)
tree053fbdd575aae8dd06a8e8b90f39b6060d7b635d /base/common/src/com/netscape/cms/client
parentc4636a5b56bd3e0f18fb3afd0b930729d58ce1f6 (diff)
downloadpki-2d427ce0008fb43ae9f6c02301ce6793a42904b9.tar.gz
pki-2d427ce0008fb43ae9f6c02301ce6793a42904b9.tar.xz
pki-2d427ce0008fb43ae9f6c02301ce6793a42904b9.zip
Added support for basic authentication.
The CMSRestClient has been modified to support basic authentication and handle HTTP redirection. The basic authentication can be used as follows: pki -U <server uri> -u <username> -w <password> user-find Some protected REST services might require secure connection. If the user tries to call these services over HTTP the CLI will handle the redirection automatically to an HTTPS port. Ticket #107
Diffstat (limited to 'base/common/src/com/netscape/cms/client')
-rw-r--r--base/common/src/com/netscape/cms/client/cli/ClientConfig.java16
-rw-r--r--base/common/src/com/netscape/cms/client/cli/MainCLI.java8
2 files changed, 24 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/cms/client/cli/ClientConfig.java b/base/common/src/com/netscape/cms/client/cli/ClientConfig.java
index bad8ba626..8b5380805 100644
--- a/base/common/src/com/netscape/cms/client/cli/ClientConfig.java
+++ b/base/common/src/com/netscape/cms/client/cli/ClientConfig.java
@@ -52,6 +52,7 @@ public class ClientConfig {
String certDatabase;
String certNickname;
+ String username;
String password;
@XmlElement(name="ServerURI")
@@ -85,6 +86,15 @@ public class ClientConfig {
this.certNickname = certNickname;
}
+ @XmlElement(name="Username")
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
@XmlElement(name="Password")
public String getPassword() {
return password;
@@ -102,6 +112,7 @@ public class ClientConfig {
result = prime * result + ((certNickname == null) ? 0 : certNickname.hashCode());
result = prime * result + ((password == null) ? 0 : password.hashCode());
result = prime * result + ((serverURI == null) ? 0 : serverURI.hashCode());
+ result = prime * result + ((username == null) ? 0 : username.hashCode());
return result;
}
@@ -134,6 +145,11 @@ public class ClientConfig {
return false;
} else if (!serverURI.equals(other.serverURI))
return false;
+ if (username == null) {
+ if (other.username != null)
+ return false;
+ } else if (!username.equals(other.username))
+ return false;
return true;
}
diff --git a/base/common/src/com/netscape/cms/client/cli/MainCLI.java b/base/common/src/com/netscape/cms/client/cli/MainCLI.java
index 0367cbbfd..50c90d892 100644
--- a/base/common/src/com/netscape/cms/client/cli/MainCLI.java
+++ b/base/common/src/com/netscape/cms/client/cli/MainCLI.java
@@ -107,6 +107,10 @@ public class MainCLI extends CLI {
option.setArgName("nickname");
options.addOption(option);
+ option = new Option("u", true, "Username");
+ option.setArgName("username");
+ options.addOption(option);
+
option = new Option("w", true, "Password");
option.setArgName("password");
options.addOption(option);
@@ -131,6 +135,7 @@ public class MainCLI extends CLI {
String certDatabase = cmd.getOptionValue("d");
String certNickname = cmd.getOptionValue("n");
+ String username = cmd.getOptionValue("u");
String password = cmd.getOptionValue("w");
// convert into absolute path
@@ -140,6 +145,9 @@ public class MainCLI extends CLI {
if (certNickname != null)
config.setCertNickname(certNickname);
+ if (username != null)
+ config.setUsername(username);
+
if (password != null)
config.setPassword(password);
}