You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by kt...@apache.org on 2013/04/18 03:34:37 UTC
svn commit: r1469120 [2/2] - in /accumulo/trunk: ./ assemble/
conf/examples/1GB/native-standalone/ conf/examples/1GB/standalone/
conf/examples/2GB/native-standalone/ conf/examples/2GB/standalone/
conf/examples/3GB/native-standalone/ conf/examples/3GB/s...
Modified: accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java (original)
+++ accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java Thu Apr 18 01:34:36 2013
@@ -27,6 +27,7 @@ import java.util.Map;
import java.util.Properties;
import java.util.TreeMap;
+import org.apache.accumulo.core.client.security.tokens.PasswordToken;
import org.apache.accumulo.core.util.ByteBufferUtil;
import org.apache.accumulo.proxy.thrift.SystemPermission;
import org.apache.accumulo.proxy.thrift.TablePermission;
@@ -55,6 +56,7 @@ public class TestProxySecurityOperations
public static void setup() throws Exception {
Properties prop = new Properties();
prop.setProperty("org.apache.accumulo.proxy.ProxyServer.useMockInstance", "true");
+ prop.put("org.apache.accumulo.proxy.ProxyServer.tokenClass", PasswordToken.class.getName());
proxy = Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"), Class.forName("org.apache.accumulo.proxy.ProxyServer"),
port, TCompactProtocol.Factory.class, prop);
Modified: accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java (original)
+++ accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java Thu Apr 18 01:34:36 2013
@@ -31,6 +31,7 @@ import java.util.Properties;
import java.util.Set;
import java.util.TreeMap;
+import org.apache.accumulo.core.client.security.tokens.PasswordToken;
import org.apache.accumulo.proxy.thrift.ColumnUpdate;
import org.apache.accumulo.proxy.thrift.TimeType;
import org.apache.thrift.TException;
@@ -56,6 +57,7 @@ public class TestProxyTableOperations {
public static void setup() throws Exception {
Properties prop = new Properties();
prop.setProperty("org.apache.accumulo.proxy.ProxyServer.useMockInstance", "true");
+ prop.put("org.apache.accumulo.proxy.ProxyServer.tokenClass", PasswordToken.class.getName());
proxy = Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"), Class.forName("org.apache.accumulo.proxy.ProxyServer"),
port, TCompactProtocol.Factory.class, prop);
Propchange: accumulo/trunk/server/
------------------------------------------------------------------------------
Merged /accumulo/branches/1.5/server:r1469113
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/Accumulo.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/Accumulo.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/Accumulo.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/Accumulo.java Thu Apr 18 01:34:36 2013
@@ -26,6 +26,7 @@ import java.util.Map.Entry;
import java.util.TreeMap;
import org.apache.accumulo.core.Constants;
+import org.apache.accumulo.core.conf.Property;
import org.apache.accumulo.core.trace.DistributedTrace;
import org.apache.accumulo.core.util.CachedConfiguration;
import org.apache.accumulo.core.util.UtilWaitThread;
@@ -127,7 +128,8 @@ public class Accumulo {
sortedProps.put(entry.getKey(), entry.getValue());
for (Entry<String,String> entry : sortedProps.entrySet()) {
- if (entry.getKey().toLowerCase().contains("password") || entry.getKey().toLowerCase().contains("secret"))
+ if (entry.getKey().toLowerCase().contains("password") || entry.getKey().toLowerCase().contains("secret")
+ || entry.getKey().startsWith(Property.TRACE_TOKEN_PROPERTY_PREFIX.getKey()))
log.info(entry.getKey() + " = <hidden>");
else
log.info(entry.getKey() + " = " + entry.getValue());
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/ClientServiceHandler.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/ClientServiceHandler.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/ClientServiceHandler.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/ClientServiceHandler.java Thu Apr 18 01:34:36 2013
@@ -196,6 +196,8 @@ public class ClientServiceHandler implem
continue;
if (entry.getKey().toLowerCase().contains("password"))
continue;
+ if (entry.getKey().startsWith(Property.TRACE_TOKEN_PROPERTY_PREFIX.getKey()))
+ continue;
result.put(entry.getKey(), entry.getValue());
}
return result;
@@ -269,9 +271,4 @@ public class ClientServiceHandler implem
return false;
}
}
-
- @Override
- public String getAuthenticatorClassName() throws TException {
- return security.getTokenLoginClass();
- }
}
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java Thu Apr 18 01:34:36 2013
@@ -19,7 +19,6 @@ package org.apache.accumulo.server.clien
import java.nio.ByteBuffer;
import java.util.Collections;
import java.util.List;
-import java.util.Properties;
import java.util.UUID;
import org.apache.accumulo.core.Constants;
@@ -28,16 +27,12 @@ import org.apache.accumulo.core.client.A
import org.apache.accumulo.core.client.Connector;
import org.apache.accumulo.core.client.Instance;
import org.apache.accumulo.core.client.ZooKeeperInstance;
-import org.apache.accumulo.core.client.impl.ClientExecReturn;
import org.apache.accumulo.core.client.impl.ConnectorImpl;
-import org.apache.accumulo.core.client.impl.ServerClient;
-import org.apache.accumulo.core.client.impl.thrift.ClientService;
import org.apache.accumulo.core.client.security.tokens.AuthenticationToken;
import org.apache.accumulo.core.client.security.tokens.PasswordToken;
import org.apache.accumulo.core.conf.AccumuloConfiguration;
import org.apache.accumulo.core.conf.Property;
import org.apache.accumulo.core.security.CredentialHelper;
-import org.apache.accumulo.core.security.handler.Authenticator;
import org.apache.accumulo.core.security.thrift.TCredentials;
import org.apache.accumulo.core.util.ByteBufferUtil;
import org.apache.accumulo.core.util.OpTimer;
@@ -203,37 +198,4 @@ public class HdfsZooInstance implements
public Connector getConnector(org.apache.accumulo.core.security.thrift.AuthInfo auth) throws AccumuloException, AccumuloSecurityException {
return getConnector(auth.user, auth.getPassword());
}
-
- @Override
- public String getAuthenticatorClassName() throws AccumuloException, AccumuloSecurityException {
- return ServerClient.execute(this, new ClientExecReturn<String,ClientService.Client>() {
- @Override
- public String execute(ClientService.Client iface) throws Exception {
- return iface.getAuthenticatorClassName();
- }
- });
- }
-
- @Override
- public Authenticator getAuthenticator() throws AccumuloException, AccumuloSecurityException {
- String authenticatorName = getAuthenticatorClassName();
- try {
- Class<?> clazz = Class.forName(authenticatorName);
- Class<? extends Authenticator> authClass = clazz.asSubclass(Authenticator.class);
- Authenticator authenticator = authClass.newInstance();
- return authenticator;
- } catch (ClassNotFoundException e) {
- throw new AccumuloException(e);
- } catch (InstantiationException e) {
- throw new AccumuloException(e);
- } catch (IllegalAccessException e) {
- throw new AccumuloException(e);
- }
- }
-
- public Connector getConnector(String principal, Properties props) throws AccumuloException, AccumuloSecurityException {
- Authenticator authenticator = getAuthenticator();
- AuthenticationToken authToken = authenticator.login(principal, props);
- return getConnector(principal, authToken);
- }
}
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/monitor/servlets/trace/Basic.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/monitor/servlets/trace/Basic.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/monitor/servlets/trace/Basic.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/monitor/servlets/trace/Basic.java Thu Apr 18 01:34:36 2013
@@ -36,6 +36,7 @@ import org.apache.accumulo.core.trace.Tr
import org.apache.accumulo.server.client.HdfsZooInstance;
import org.apache.accumulo.server.monitor.Monitor;
import org.apache.accumulo.server.monitor.servlets.BasicServlet;
+import org.apache.accumulo.start.classloader.AccumuloClassLoader;
abstract class Basic extends BasicServlet {
@@ -68,27 +69,28 @@ abstract class Basic extends BasicServle
protected Scanner getScanner(StringBuilder sb) throws AccumuloException, AccumuloSecurityException {
AccumuloConfiguration conf = Monitor.getSystemConfiguration();
- String principal = conf.get(Property.TRACE_PRINCIPAL);
- if (principal == null) {
- @SuppressWarnings("deprecation")
- Property p = Property.TRACE_USER;
- principal = conf.get(p);
- }
+ String principal = conf.get(Property.TRACE_USER);
AuthenticationToken at;
- Map<String,String> loginMap = conf.getAllPropertiesWithPrefix(Property.TRACE_LOGIN_PROPERTIES);
+ Map<String,String> loginMap = conf.getAllPropertiesWithPrefix(Property.TRACE_TOKEN_PROPERTY_PREFIX);
if (loginMap.isEmpty()) {
- @SuppressWarnings("deprecation")
Property p = Property.TRACE_PASSWORD;
at = new PasswordToken(conf.get(p).getBytes());
} else {
Properties props = new Properties();
- int prefixLength = Property.TRACE_LOGIN_PROPERTIES.getKey().length() + 1;
+ int prefixLength = Property.TRACE_TOKEN_PROPERTY_PREFIX.getKey().length() + 1;
for (Entry<String,String> entry : loginMap.entrySet()) {
props.put(entry.getKey().substring(prefixLength), entry.getValue());
}
- if (!props.containsKey("principal"))
- props.put("principal", principal);
- at = HdfsZooInstance.getInstance().getAuthenticator().login(principal, props);
+
+ AuthenticationToken token;
+ try {
+ token = AccumuloClassLoader.getClassLoader().loadClass(conf.get(Property.TRACE_TOKEN_TYPE)).asSubclass(AuthenticationToken.class).newInstance();
+ } catch (Exception e) {
+ throw new AccumuloException(e);
+ }
+
+ token.init(props);
+ at = token;
}
String table = conf.get(Property.TRACE_TABLE);
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/SecurityOperation.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/SecurityOperation.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/SecurityOperation.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/SecurityOperation.java Thu Apr 18 01:34:36 2013
@@ -612,8 +612,4 @@ public class SecurityOperation {
authenticate(credentials);
return hasSystemPermission(credentials.getPrincipal(), SystemPermission.CREATE_TABLE, false);
}
-
- public String getTokenLoginClass() {
- return authenticator.getTokenLoginClass();
- }
}
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/Authenticator.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/Authenticator.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/Authenticator.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/Authenticator.java Thu Apr 18 01:34:36 2013
@@ -28,7 +28,7 @@ import org.apache.accumulo.core.security
* should throw an AccumuloSecurityException with the error code UNSUPPORTED_OPERATION
*/
-public interface Authenticator extends org.apache.accumulo.core.security.handler.Authenticator {
+public interface Authenticator {
public void initialize(String instanceId, boolean initialize);
@@ -48,7 +48,7 @@ public interface Authenticator extends o
public boolean userExists(String user) throws AccumuloSecurityException;
- public String getTokenLoginClass();
+ public Set<Class<? extends AuthenticationToken>> getSupportedTokenTypes();
/**
* Returns true if the given token is appropriate for this Authenticator
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/InsecureAuthenticator.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/InsecureAuthenticator.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/InsecureAuthenticator.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/InsecureAuthenticator.java Thu Apr 18 01:34:36 2013
@@ -17,6 +17,7 @@
package org.apache.accumulo.server.security.handler;
import java.util.Collections;
+import java.util.HashSet;
import java.util.Set;
import org.apache.accumulo.core.client.AccumuloSecurityException;
@@ -28,7 +29,7 @@ import org.apache.accumulo.core.security
* This is an Authenticator implementation that doesn't actually do any security. Any principal will authenticate if a NullToken is provided. It's existence is
* primarily for testing, but can also be used for any system where user space management is not a concern.
*/
-public class InsecureAuthenticator extends org.apache.accumulo.core.security.handler.InsecureAuthenticator implements Authenticator {
+public class InsecureAuthenticator implements Authenticator {
@Override
public void initialize(String instanceId, boolean initialize) {
@@ -76,13 +77,15 @@ public class InsecureAuthenticator exten
}
@Override
- public String getTokenLoginClass() {
- return this.getClass().getSuperclass().getName();
- }
-
- @Override
public boolean validTokenClass(String tokenClass) {
return tokenClass.equals(NullToken.class.getName());
}
+
+ @Override
+ public Set<Class<? extends AuthenticationToken>> getSupportedTokenTypes() {
+ Set<Class<? extends AuthenticationToken>> cs = new HashSet<Class<? extends AuthenticationToken>>();
+ cs.add(NullToken.class);
+ return cs;
+ }
}
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/ZKAuthenticator.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/ZKAuthenticator.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/ZKAuthenticator.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/security/handler/ZKAuthenticator.java Thu Apr 18 01:34:36 2013
@@ -16,6 +16,7 @@
*/
package org.apache.accumulo.server.security.handler;
+import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;
@@ -35,7 +36,7 @@ import org.apache.log4j.Logger;
import org.apache.zookeeper.KeeperException;
// Utility class for adding all authentication info into ZK
-public final class ZKAuthenticator extends org.apache.accumulo.core.security.handler.ZKAuthenticator implements Authenticator {
+public final class ZKAuthenticator implements Authenticator {
static final Logger log = Logger.getLogger(ZKAuthenticator.class);
private static Authenticator zkAuthenticatorInstance = null;
@@ -199,8 +200,10 @@ public final class ZKAuthenticator exten
}
@Override
- public String getTokenLoginClass() {
- return this.getClass().getSuperclass().getName();
+ public Set<Class<? extends AuthenticationToken>> getSupportedTokenTypes() {
+ Set<Class<? extends AuthenticationToken>> cs = new HashSet<Class<? extends AuthenticationToken>>();
+ cs.add(PasswordToken.class);
+ return cs;
}
@Override
Modified: accumulo/trunk/server/src/main/java/org/apache/accumulo/server/trace/TraceServer.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/server/src/main/java/org/apache/accumulo/server/trace/TraceServer.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/server/src/main/java/org/apache/accumulo/server/trace/TraceServer.java (original)
+++ accumulo/trunk/server/src/main/java/org/apache/accumulo/server/trace/TraceServer.java Thu Apr 18 01:34:36 2013
@@ -49,6 +49,7 @@ import org.apache.accumulo.server.client
import org.apache.accumulo.server.conf.ServerConfiguration;
import org.apache.accumulo.server.util.time.SimpleTimer;
import org.apache.accumulo.server.zookeeper.ZooReaderWriter;
+import org.apache.accumulo.start.classloader.AccumuloClassLoader;
import org.apache.accumulo.trace.instrument.Span;
import org.apache.accumulo.trace.thrift.RemoteSpan;
import org.apache.accumulo.trace.thrift.SpanReceiver.Iface;
@@ -160,25 +161,25 @@ public class TraceServer implements Watc
table = conf.get(Property.TRACE_TABLE);
while (true) {
try {
- String principal = conf.get(Property.TRACE_PRINCIPAL);
- if (principal == null) {
- @SuppressWarnings("deprecation")
- Property p = Property.TRACE_USER;
- principal = conf.get(p);
- }
+ String principal = conf.get(Property.TRACE_USER);
AuthenticationToken at;
- Map<String,String> loginMap = conf.getAllPropertiesWithPrefix(Property.TRACE_LOGIN_PROPERTIES);
- if (loginMap == null) {
- @SuppressWarnings("deprecation")
+ Map<String,String> loginMap = conf.getAllPropertiesWithPrefix(Property.TRACE_TOKEN_PROPERTY_PREFIX);
+ if (loginMap.isEmpty()) {
Property p = Property.TRACE_PASSWORD;
at = new PasswordToken(conf.get(p).getBytes());
} else {
Properties props = new Properties();
- int prefixLength = Property.TRACE_LOGIN_PROPERTIES.getKey().length() + 1;
+ AuthenticationToken token = AccumuloClassLoader.getClassLoader().loadClass(conf.get(Property.TRACE_TOKEN_TYPE)).asSubclass(AuthenticationToken.class)
+ .newInstance();
+
+ int prefixLength = Property.TRACE_TOKEN_PROPERTY_PREFIX.getKey().length() + 1;
for (Entry<String,String> entry : loginMap.entrySet()) {
props.put(entry.getKey().substring(prefixLength), entry.getValue());
}
- at = serverConfiguration.getInstance().getAuthenticator().login(principal, props);
+
+ token.init(props);
+
+ at = token;
}
connector = serverConfiguration.getInstance().getConnector(principal, at);
Propchange: accumulo/trunk/src/
------------------------------------------------------------------------------
Merged /accumulo/branches/1.5/src:r1469113
Modified: accumulo/trunk/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java (original)
+++ accumulo/trunk/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java Thu Apr 18 01:34:36 2013
@@ -263,7 +263,7 @@ public class MiniAccumuloCluster {
appendProp(fileWriter, Property.TSERV_MAXMEM, "50M", siteConfig);
appendProp(fileWriter, Property.TSERV_WALOG_MAX_SIZE, "100M", siteConfig);
appendProp(fileWriter, Property.TSERV_NATIVEMAP_ENABLED, "false", siteConfig);
- appendProp(fileWriter, Property.TRACE_LOGIN_PROPERTIES + ".password", config.getRootPassword(), siteConfig);
+ appendProp(fileWriter, Property.TRACE_TOKEN_PROPERTY_PREFIX + ".password", config.getRootPassword(), siteConfig);
appendProp(fileWriter, Property.TRACE_PORT, "" + getRandomFreePort(), siteConfig);
// since there is a small amount of memory, check more frequently for majc... setting may not be needed in 1.5
appendProp(fileWriter, Property.TSERV_MAJC_DELAY, "3", siteConfig);
Modified: accumulo/trunk/test/src/main/java/org/apache/accumulo/test/randomwalk/security/WalkingSecurity.java
URL: http://svn.apache.org/viewvc/accumulo/trunk/test/src/main/java/org/apache/accumulo/test/randomwalk/security/WalkingSecurity.java?rev=1469120&r1=1469119&r2=1469120&view=diff
==============================================================================
--- accumulo/trunk/test/src/main/java/org/apache/accumulo/test/randomwalk/security/WalkingSecurity.java (original)
+++ accumulo/trunk/test/src/main/java/org/apache/accumulo/test/randomwalk/security/WalkingSecurity.java Thu Apr 18 01:34:36 2013
@@ -18,10 +18,8 @@ package org.apache.accumulo.test.randomw
import java.io.IOException;
import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
+import java.util.HashSet;
import java.util.Map;
-import java.util.Properties;
import java.util.Set;
import java.util.TreeSet;
@@ -400,27 +398,18 @@ public class WalkingSecurity extends Sec
}
@Override
- public AuthenticationToken login(String principal, Properties properties) throws AccumuloSecurityException {
- if (properties.containsKey("password"))
- return new PasswordToken(properties.getProperty("password"));
- throw new AccumuloSecurityException(principal, SecurityErrorCode.INSUFFICIENT_PROPERTIES);
- }
-
- @Override
public boolean validTokenClass(String tokenClass) {
return tokenClass.equals(PasswordToken.class.getCanonicalName());
}
- @Override
- public List<Set<AuthProperty>> getProperties() {
- List<Set<AuthProperty>> toRet = new LinkedList<Set<AuthProperty>>();
- Set<AuthProperty> internal = new TreeSet<AuthProperty>();
- internal.add(new AuthProperty("password", "the password for the principal", true));
- toRet.add(internal);
- return toRet;
- }
-
public static void clearInstance() {
instance = null;
}
+
+ @Override
+ public Set<Class<? extends AuthenticationToken>> getSupportedTokenTypes() {
+ Set<Class<? extends AuthenticationToken>> cs = new HashSet<Class<? extends AuthenticationToken>>();
+ cs.add(PasswordToken.class);
+ return cs;
+ }
}