blob: b16766a6ebb4653048112d8d110d00b3ed33e7ea (
plain) (
tree)
|
|
package org.openslx.imagemaster.serversession;
import java.util.HashMap;
import org.apache.thrift.TException;
import org.openslx.imagemaster.thrift.iface.AuthenticationException;
import org.openslx.imagemaster.util.RandomString;
public class ServerAuthenticator {
private static HashMap<String, String> authenticatingServers = new HashMap<String, String>();
/**
* Start the server authentification.
* @param organization the organization of the server
* @return encrypted random string
*/
public static String startServerAuthentication(String organization) {
/*
* TODO:
* Create random string, send it to server.
* Remember organization for later authentification.
*/
String secret = RandomString.generate(100, false);
synchronized (authenticatingServers) {
authenticatingServers.put(organization, secret);
}
return secret;
}
public static ServerUser serverAuthenticate(String organization, String address,
String challengeResponse) throws AuthenticationException,
TException {
/*
* TODO:
* Decrypt the given challengeResponse and check whether it was right or not.
* Authenticate server if so.
*/
return new ServerUser(organization, address);
}
}
|