Commit fbd580d8 authored by R.W.Majeed's avatar R.W.Majeed
Browse files

authentication API mproved

parent 31690651
Loading
Loading
Loading
Loading
+21 −0
Original line number Original line Diff line number Diff line
package org.aktin.dwh;

import java.security.Principal;

public interface Authentication extends Principal{
	@Override
	String getName();

	/**
	 * Determine whether the user has the given role assigned.
	 * @param role role name
	 * @return true if role is assigned, false otherwise
	 */
	boolean hasRole(String role);

	/** Determine whether this user has admin privileges.
	 * 
	 * @return  true if the user has administrative rights
	 */
	boolean isAdmin();
}
+1 −13
Original line number Original line Diff line number Diff line
package org.aktin.dwh;
package org.aktin.dwh;


import java.security.Principal;

public interface Authenticator {
public interface Authenticator {
	
	
	Principal authenticate(String user, char[] password);
	Authentication authenticate(String user, char[] password);
	boolean isUserInRole(Principal user, String role);
	/** Determine whether a given user has admin privileges.
	 * 
	 * @param user user
	 * @return  true if the user has administrative rights
	 */
	boolean isUserAdmin(Principal user);
	
	
	
	
	
}
}
+7 −0
Original line number Original line Diff line number Diff line
@@ -53,6 +53,13 @@ public class Query {
	@XmlElement(required=true)
	@XmlElement(required=true)
	public QuerySchedule schedule;
	public QuerySchedule schedule;
	
	
	/**
	 * Extension to specify export definition and query definition.
	 * <p>
	 * E.g. for native i2b2: elements {@code query_definition} and {@code result_output_list}
	 * from XML namespace {@code http://www.i2b2.org/xsd/cell/crc/psm/1.1/}.
	 * </p>
	 */
	@XmlAnyElement
	@XmlAnyElement
	public List<Element> extensions;
	public List<Element> extensions;


+0 −1
Original line number Original line Diff line number Diff line
@@ -3,7 +3,6 @@ package org.aktin.exchange;
import java.io.IOException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStream;
import java.net.URL;
import java.net.URL;
import java.time.Duration;


import javax.xml.bind.JAXB;
import javax.xml.bind.JAXB;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.ParserConfigurationException;