teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5993: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5993: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.server.auth; bjoern@2956: bjoern@2978: import java.util.List; bjoern@2978: bjoern@2979: /** bjoern@2979: * User representation after a succesfull login bjoern@2979: */ bjoern@2956: public interface User { bjoern@2956: bjoern@2979: /** bjoern@2979: * Returns the username as String bjoern@2979: */ bjoern@2956: public String getName(); bjoern@2956: bjoern@2979: /** bjoern@2979: * Returns the password of the user as String bjoern@2979: */ bjoern@2956: public String getPassword(); bjoern@2956: bjoern@2979: /** bjoern@2979: * Returns True if the authentication for the user bjoern@2979: * has expired. bjoern@2979: */ sascha@2959: public boolean hasExpired(); bjoern@2978: bjoern@2979: /** bjoern@2979: * Returns a list of roles corresponsing the the user bjoern@2979: */ bjoern@2978: public List getRoles(); bjoern@3485: bjoern@3485: bjoern@3485: /** bjoern@3485: * Returns true if the user is allowed access the feature bjoern@3485: */ bjoern@3485: public boolean canUseFeature(String feature); bjoern@3504: bjoern@3504: /** bjoern@3504: * Returns the users account name bjoern@3504: */ bjoern@3504: public String getAccount(); bh@6187: bh@6187: /** bh@6187: * Returns the SAML ticket for single sign-on. bh@6187: * @return The SAML ticket in base64 encoded XML. null if no ticket bh@6187: * is available. bh@6187: */ bh@6187: public String getSamlXMLBase64(); bjoern@2956: } bjoern@2956: // vim:set ts=4 sw=4 si et fenc=utf8 tw=80: