@Service public class SecurityService extends Object
SecurityServiceLdap
gecacht, um wiederholte Anfragen an
das LDAP zu vermeiden.Constructor and Description |
---|
SecurityService() |
Modifier and Type | Method and Description |
---|---|
String |
createHash(String str)
Erzeugt aus einem String einen MD5-Hash. diese wird beispielsweise zum Erzeugen der URL für
Bestätigungen verwendet.
|
List<Role> |
getAllAussendienstTeams()
Ermittelt alle Aussendienstteams
|
List<Role> |
getAllDelegiertAn(Boolean sortByDescription)
Ermittelt alle im System vorhandenen Rollen zum Delegieren
|
String[] |
getAllExternUserEmailsForRole(String roleId)
Ermittelt die E-Mail-Adressen der externen Benutzer einer Rolle
|
List<Role> |
getAllGroupsForRole(String roleId,
boolean inclDispatcher)
Ermittelt alle Gruppen für eine gegebene Rolle.
|
List<User> |
getAllUser()
Ermittelt alle Benutzer, die für das Backend einen Zugang haben.
|
String[] |
getAllUserEmailsForRole(String roleId)
Ermittelt die E-Mail-Adressen aller Benutzer einer Rolle
|
List<User> |
getAllUserForGroup(String groupId)
Ermittelt alle Benutzer für eine gegebene Gruppe.
|
List<User> |
getAllUserForRole(String roleId)
Ermittelt alle Benutzer für eine gegebene Rolle.
|
List<String> |
getAllUserNamesForRole(String roleId)
Ermittelt alle Benutzernamen für eine gegebene Rolle.
|
List<User> |
getAllUserWithAreas()
Ermittelt alle Benutzer, die für das Backend einen Zugang haben.
|
List<Role> |
getAllZustaendigkeiten(boolean inclDispatcher)
Ermittelt alle im System vorhandenen Zuständigkeiten.
|
List<String> |
getAussendienstKoordinatorZustaendigkeiten(String login)
Ermittelt alle Aussendienstteams eines Koordinators
|
List<String> |
getAussendienstTeam(String login)
Ermittelt die Außendienst-Teams, denen ein Benutzer zugeordnet ist
|
List<Role> |
getAussendienstZustaendigkeiten(String login,
boolean inclDispatcher)
Ermittelt die Liste der Zuständigkeiten für einen Benutzer
|
private User |
getBenutzerDaten(User user) |
List<Role> |
getCurrentDelegiertAn()
Ermittelt die Rollen zum Delegieren für den aktuellen Benutzer
|
User |
getCurrentUser()
Ermittelt für den aktuellen Benutzer die Benutzerdaten.
|
List<Role> |
getCurrentZustaendigkeiten(boolean inclDispatcher)
Ermittelt die Liste der Zuständigkeiten für den aktuellen Benutzer.
|
List<Role> |
getDelegiertAn(String login)
Ermittelt die Rollen zum Delegieren für einen Benutzer
|
Role |
getDispatcherZustaendigkeit()
Ermittelt die Rolle für die Dispatcher.
|
String |
getDispatcherZustaendigkeitId()
Gibt die Id für die Rolle der Dispatcher zurück.
|
String |
getGroupAdmin() |
String |
getGroupAussendienst() |
private String |
getGroupConditions(List<Role> roles) |
String |
getGroupExtern() |
String |
getGroupIntern() |
String |
getGroupKoordinator() |
String |
getGroupObjectClass() |
String |
getGroupObjectId() |
String |
getGroupRoleAttribute() |
List<Role> |
getGroupsByUserEmailAndGroupMatcher(String email,
String groupMatchCondition)
Ermittelt alle Gruppen für einen Benutzer anhand der EMail-Adresse.
|
String |
getGroupSearchBase() |
String |
getGroupSearchFilter() |
List<Role> |
getGroupsForRole(String roleName)
Ermittelt alle Benutzer, die für das Backend einen Zugang haben.
|
String |
getRoleAttributesMapping() |
String |
getRoot() |
SecurityServiceLdap |
getSecurityServiceLdap() |
User |
getUser(String login)
Ermittelt die Benutzerdaten für einen Benutzer.
|
String |
getUserAttributesMapping() |
User |
getUserByEmail(String email)
Ermittelt die Benutzerdaten für einen Benutzer anhand der EMail-Adresse.
|
String |
getUserEmailFilter() |
String |
getUserEmailForRoleByName(String userName,
String roleId)
Ermittelt die Benutzer-E-Mail-Adresse für einen Benutzer in einer gegebenen Rolle anhand des
Benutzernamens.
|
List<User> |
getUserFromLoginList(List<List<String>> usersLoginList) |
String |
getUserObjectClass() |
String |
getUserSearchBase() |
String |
getUserSearchFilter() |
Role |
getZustaendigkeit(String id)
Ermittelt die Rollendaten für eine Zuständigkeit.
|
List<Role> |
getZustaendigkeiten(String login,
boolean inclDispatcher)
Ermittelt die Liste der Zuständigkeiten für einen Benutzer
|
void |
init()
Initialisiert den Service.
|
String |
installCertificates(String pass) |
boolean |
isCurrentDelegiertAn(Long vorgangId)
Ermittelt ob der Vorgang an den aktuelle Benutzer delegiert wurde.
|
boolean |
isCurrentUserAdmin()
Ermittelt ob der aktuelle Benutzer Adminrechte hat.
|
boolean |
isCurrentUserDispatcher()
Ermittelt ob der aktuelle Benutzer ein Dispatcher ist.
|
boolean |
isCurrentUserExtern()
Ermittelt ob der aktuelle Benutzer ein externer Benutzer ist.
|
boolean |
isCurrentUserIntern()
Ermittelt ob der aktuelle Benutzer ein interner Benutzer ist.
|
boolean |
isCurrentZustaendigForVorgang(Vorgang vorgang)
Ermittelt ob der aktuelle Benutzer für ein Vorgang zuständig ist.
|
boolean |
isCurrentZustaendigkeiten(Long vorgangId)
Ermittelt ob der aktuelle Benutzer für den Vorgang zuständig ist.
|
boolean |
isUserAdmin(String login)
Ermittelt ob der Benutzer Adminrechte hat.
|
boolean |
isUserDispatcher(String login)
Ermittelt ob der Benutzer ein Dispatcher ist.
|
boolean |
isUserExtern(String login)
Ermittelt ob der Benutzer ein externer Benutzer ist.
|
boolean |
isUserIntern(String login)
Ermittelt ob der Benutzer ein interner Benutzer ist.
|
boolean |
isUserKoordinator(String login)
Ermittelt ob der Benutzer Koordinator-Rechte hat.
|
boolean |
isZustaendigForVorgang(String login,
Vorgang vorgang)
Ermittelt ob ein Benutzer für ein Vorgang zuständig ist.
|
boolean |
mayCurrentUserEditKommentar(Kommentar kommentar)
Prüft, ob der aktuelle Nutzer einen Kommentar bearbeiten darf.
|
void |
setGroupAdmin(String groupAdmin) |
void |
setGroupAussendienst(String groupAussendienst) |
void |
setGroupExtern(String groupExtern) |
void |
setGroupIntern(String groupIntern) |
void |
setGroupObjectClass(String groupObjectClass) |
void |
setGroupObjectId(String groupObjectId) |
void |
setGroupRoleAttribute(String groupRoleAttribute) |
void |
setGroupSearchBase(String groupSearchBase) |
void |
setGroupSearchFilter(String groupSearchFilter) |
void |
setRoleAttributesMapping(String roleAttributesMapping) |
void |
setRoot(String root) |
void |
setSecurityServiceLdap(SecurityServiceLdap securityServiceLdap) |
void |
setUserAttributesMapping(String userAttributesMapping) |
void |
setUserEmailFilter(String userEmailFilter) |
void |
setUserObjectClass(String userObjectClass) |
void |
setUserSearchBase(String userSearchBase) |
void |
setUserSearchFilter(String userSearchFilter) |
private List<User> |
sortedUsers(List<User> users) |
static final org.apache.log4j.Logger logger
@Autowired BenutzerDao benutzerDao
@Autowired FlaechenDao flaechenDao
@Autowired VorgangDao vorgangDao
@Autowired AussendienstKoordinatorDao aussendienstKoordinatorDao
@Autowired SettingsService settingsService
SecurityServiceLdap securityServiceLdap
String root
String userAttributesMapping
String roleAttributesMapping
String userSearchBase
String userObjectClass
String userSearchFilter
String userEmailFilter
String groupSearchBase
String groupObjectClass
String groupSearchFilter
String groupObjectId
String groupRoleAttribute
String groupIntern
String groupExtern
String groupAdmin
String groupDispatcher
String groupKoordinator
String groupAussendienst
private ContextMapper<User> userContextMapper
private ContextMapper<Role> roleContextMapper
private UserLoginContextMapper userLoginContextMapper
static final String FS
@PostConstruct public void init()
public boolean isCurrentUserAdmin()
true
- der Benutzer hat Adminrechtepublic boolean isUserAdmin(String login)
login
- Benutzer, für den überprüft werden soll, ob er Adminrechte hat.true
- der Benutzer hat Adminrechtepublic boolean isCurrentUserDispatcher()
true
- der Benutzer ist ein Dispatcherpublic boolean isUserDispatcher(String login)
login
- Benutzer, für den überprüft werden soll, ob er ein Dispatcher ist.true
- der Benutzer ist ein Dispatcherpublic boolean isUserKoordinator(String login)
login
- Benutzer, für den überprüft werden soll, ob er Koordinator-Rechte hat.true
- der Benutzer hat Koordinator-Rechtepublic User getCurrentUser()
null
wenn die Benutzerdaten nicht ermittelt
werden konntenpublic User getUser(String login)
login
- Benutzer für den die Benutzerdaten ermittelt werden sollennull
wenn die Benutzerdaten nicht
ermittelt werden konntenpublic User getUserByEmail(String email)
email
- EMail des Benutzers für den die Benutzerdaten ermittelt werden sollennull
wenn die Benutzerdaten nicht
ermittelt werden konntenpublic List<Role> getGroupsByUserEmailAndGroupMatcher(String email, String groupMatchCondition)
email
- EMail des Benutzers für den die Gruppen gesucht werden sollengroupMatchCondition
- MatchCondition auf die die Suche eingeschränkt werden sollpublic String getUserEmailForRoleByName(String userName, String roleId)
userName
- Benutzername, für den die Benutzer-E-Mail-Adresse ermittelt werden sollroleId
- Rolle, auf die die Suche beschränkt werden sollnull
wenn die Benutzer-E-Mail-Adresse nicht
ermittelt werden konntepublic List<User> getAllUser()
public List<Role> getGroupsForRole(String roleName)
roleName
- public List<User> getAllUserWithAreas()
public List<User> getAllUserForGroup(String groupId)
groupId
- Gruppe, für die die Benutzer ermittelt werden sollenpublic List<User> getAllUserForRole(String roleId)
roleId
- Rolle, für die die Benutzer ermittelt werden sollenpublic List<Role> getAllGroupsForRole(String roleId, boolean inclDispatcher)
roleId
- Rolle, für die die Benutzer ermittelt werden solleninclDispatcher
- Booleanpublic List<String> getAllUserNamesForRole(String roleId)
roleId
- Rolle, für die die Benutzer ermittelt werden sollenpublic String[] getAllUserEmailsForRole(String roleId)
roleId
- Rolle, für die die Benutzer und deren E-Mail-Adressen ermittelt werden sollenpublic String[] getAllExternUserEmailsForRole(String roleId)
roleId
- Rolle, für die die externen Benutzer und deren E-Mail-Adressen ermittelt werden
sollenpublic Role getDispatcherZustaendigkeit()
public String getDispatcherZustaendigkeitId()
public Role getZustaendigkeit(String id)
id
- Id der Rolle bzw. Zuständigkeitpublic List<Role> getCurrentZustaendigkeiten(boolean inclDispatcher)
inclDispatcher
- incl. der Dispatcherrolle?public List<Role> getZustaendigkeiten(String login, boolean inclDispatcher)
login
- Benutzer für den die Zuständigkeiten ermittelt werden solleninclDispatcher
- incl. der Dispatcherrolle?public List<Role> getAussendienstZustaendigkeiten(String login, boolean inclDispatcher)
login
- Benutzer für den die Zuständigkeiten ermittelt werden solleninclDispatcher
- incl. der Dispatcherrolle?public boolean isZustaendigForVorgang(String login, Vorgang vorgang)
login
- Benutzervorgang
- Vorgangtrue
- Benutzer ist für den Vorgang zuständigpublic boolean isCurrentZustaendigForVorgang(Vorgang vorgang)
vorgang
- Vorgangtrue
- aktueller Benutzer ist für den Vorgang zuständigpublic List<Role> getAllZustaendigkeiten(boolean inclDispatcher)
inclDispatcher
- incl. der Dispatcherrolle?public List<Role> getDelegiertAn(String login)
login
- Benutzer für den die Rollen ermittelt werden sollenpublic List<Role> getCurrentDelegiertAn()
public List<Role> getAllDelegiertAn(Boolean sortByDescription)
sortByDescription
- Soll nach der Beschreibung sortiert werden statt (standardmäßig) nach der ID?public boolean isCurrentUserExtern()
true
- aktueller Benutzer ist eine externe Benutzerpublic boolean isUserExtern(String login)
login
- Benutzertrue
- Benutzer ist eine externe Benutzerpublic boolean isCurrentUserIntern()
true
- aktueller Benutzer ist eine interne Benutzerpublic boolean isUserIntern(String login)
login
- Benutzertrue
- Benutzer ist eine interne Benutzerpublic boolean isCurrentZustaendigkeiten(Long vorgangId)
vorgangId
- Vorgangtrue
- aktueller Benutzer ist für den Vorgang zuständigpublic boolean isCurrentDelegiertAn(Long vorgangId)
vorgangId
- Vorgangtrue
- Vorgang ist an den aktueller Benutzer delegiertpublic String createHash(String str)
str
- String für den der Hash erstellt werden sollpublic boolean mayCurrentUserEditKommentar(Kommentar kommentar)
kommentar
- Zu prüfender Kommentarpublic List<Role> getAllAussendienstTeams()
public List<String> getAussendienstTeam(String login)
login
- Benutzer für den die Rollen ermittelt werden sollenpublic List<String> getAussendienstKoordinatorZustaendigkeiten(String login)
login
- public String getUserAttributesMapping()
public void setUserAttributesMapping(String userAttributesMapping)
public String getRoleAttributesMapping()
public void setRoleAttributesMapping(String roleAttributesMapping)
public String getUserSearchBase()
public void setUserSearchBase(String userSearchBase)
public String getUserObjectClass()
public void setUserObjectClass(String userObjectClass)
public String getUserSearchFilter()
public void setUserSearchFilter(String userSearchFilter)
public String getUserEmailFilter()
public void setUserEmailFilter(String userEmailFilter)
public String getGroupSearchBase()
public void setGroupSearchBase(String groupSearchBase)
public String getGroupObjectClass()
public void setGroupObjectClass(String groupObjectClass)
public String getGroupSearchFilter()
public void setGroupSearchFilter(String groupSearchFilter)
public String getGroupRoleAttribute()
public void setGroupRoleAttribute(String groupRoleAttribute)
public String getGroupIntern()
public void setGroupIntern(String groupIntern)
public String getGroupExtern()
public void setGroupExtern(String groupExtern)
public String getGroupObjectId()
public void setGroupObjectId(String groupObjectId)
public String getGroupAdmin()
public void setGroupAdmin(String groupAdmin)
public String getGroupAussendienst()
public void setGroupAussendienst(String groupAussendienst)
public String getGroupKoordinator()
public SecurityServiceLdap getSecurityServiceLdap()
public void setSecurityServiceLdap(SecurityServiceLdap securityServiceLdap)
public String getRoot()
public void setRoot(String root)
Copyright © 2019. All rights reserved.