Class Benutzerverwaltung
- java.lang.Object
-
- de.bsvrz.sys.funclib.bitctrl.modell.util.benutzer.Benutzerverwaltung
-
public final class Benutzerverwaltung extends java.lang.Object
Verwaltet die Benutzer des Datenverteilers.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PID_KLASSE_ADMINISTRATOR
PID der Berechtigungsklasse mit allen Zugriffsrechten.static java.lang.String
PID_KLASSE_BEOBACHTER
PID der Berechtigungsklasse mit allen Zugriffsrechten.static java.lang.String
PID_KLASSE_KEIN_ZUGRIFF
PID der Berechtigungsklasse ohne jede Zugriffsrechte.static java.lang.String
PID_REGION_ALLES
PID der Zugriffsregion für alle Objekte.static java.lang.String
PID_ROLLE_ADMINISTRATOR
PID der Zugriffsroll mit allen Zugriffsrechten.static java.lang.String
PID_ROLLE_BEOBACHTER
PID der Zugriffsrolle die nur beobachten darf.static java.lang.String
PID_ROLLE_PARAMETRIEREN
PID der Zugriffsrolle die das Parametrieren erlaubt.static java.lang.String
PRAEFIX_PID
Der Standardpräfix für die PID eines neuen Benutzer.
-
Constructor Summary
Constructors Constructor Description Benutzerverwaltung(de.bsvrz.sys.funclib.bitctrl.modell.ObjektFactory factory)
Initialisierung.
-
Method Summary
Modifier and Type Method Description void
addBenutzerListener(BenutzerListener l)
Registriert einen Listener an.void
addLoginListener(LoginListener l)
Registriert einen Listener an.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer
aendernPasswort(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, java.lang.String neuesPasswort)
Ändert das Anmeldekennwort eines Benutzer.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer
anlegenBenutzer(java.lang.String adminLoginname, java.lang.String adminPasswort, BenutzerInfo benutzerInfo, boolean adminRechte)
Legt einen neuen Benutzer an.java.lang.String
checkPasswort(java.lang.String passwort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, PasswortInfo passwortInfo)
Prüft ein neues Passwort auf seine Sicherheit.void
deaktiviereBenutzer(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Deaktiviert einen Benutzer.void
entfernenBenutzer(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Deaktiviert und löscht einen Benutzer.protected void
fireAbgemeldet(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation applikation, com.bitctrl.util.Timestamp anmeldezeit)
Benachrichtigt die angmeldeten Listener darüber, dass sich ein Benutzer abgemeldet hat.protected void
fireAngemeldet(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation applikation, com.bitctrl.util.Timestamp anmeldezeit)
Benachrichtigt die angmeldeten Listener über die Anmeldung eines Benutzers.protected void
fireBenutzerAdded(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Benachrichtigt die angmeldeten Listener darüber, dass ein neuer Benutzer angelegt wurde.protected void
fireBenutzerChanged(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse berechtigungsklasse)
Benachrichtigt die angmeldeten Listener darüber, dass die Berechtigungsklasse eines Benutzer geändert wurde.protected void
fireBenutzerRemoved(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Benachrichtigt die angmeldeten Listener darüber, dass ein Benutzer gelöscht wurde.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer
getAngemeldetenBenutzer()
Gibt den lokal angemeldeten Benutzer zurück.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.attribute.AtlAngemeldeteApplikation
getAnmeldungen(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation applikation)
Gibt die Anmeldung zu einer Applikation zurück.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.attribute.AtlAngemeldeteApplikation>
getAnmeldungen(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Gibt die Liste aller aktuell gültigen Anmeldungen eines Benutzers zurück.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation
getApplikation()
Gibt die lokale Klientapplikation zurück.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer>
getBenutzer()
Gibt eine Liste aller Benutzer im System zurück.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer>
getBenutzer(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse)
Gibt eine Liste aller Benutzer zurück, die einer bestimmten Berechtigungsklasse angehören.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer
getBenutzer(java.lang.String loginname)
Prüft ob ein bestimmter Benutzer existiert und gibt ihn zurück.java.util.Map<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer,de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse>
getBenutzerUndKlassen()
Gibt eine Zusammenstellung aller Benutzer im System und deren Benutzerklasse zurück.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse>
getBerechtigungsklasse()
Gibt eine Liste aller Berechtigungsklassen im System zurück.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse
getBerechtigungsklasse(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Bestimmt die aktuelle Berechtigungsklasse des Benutzers.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse
getBerechtigungsklasse(java.lang.String pid)
Sucht eine bestimmte Berechtigungsklasse.java.lang.String
getCachedPasswort(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer b)
Liefert das gecachte Passwort eines Benutzers.static Benutzerverwaltung
getInstanz(de.bsvrz.sys.funclib.bitctrl.modell.ObjektFactory factory)
Liefert immer wieder dieselbeBenutzerverwaltung
für dieselbeObjektFactory
.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRegion>
getRegion()
Gibt eine Liste aller Zugriffsregionen im System zurück.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRegion
getRegion(java.lang.String pid)
Sucht eine bestimmte Zugriffsregion.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRolle>
getRolle()
Gibt eine Liste aller Zugriffsrollen im System zurück.de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRolle
getRolle(java.lang.String pid)
Sucht eine bestimmte Zugriffsrolle.void
invalidatePasswordCache(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer b)
Löscht das gecachte Passwort für den Benutzerboolean
isAdmin(java.lang.String loginname)
Prüft, ob ein Bennutzer der BerechtigungsklassePID_KLASSE_ADMINISTRATOR
zugeordnet ist.boolean
isBerechtigungsklasse(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse)
Prüft ob ein bestimmter Benutzer zu einer bestimmten Berechtigungsklasse gehört.boolean
isDAVAdmin(java.lang.String loginname, java.lang.String passwort)
Prüft, ob ein Bennutzer Administratorrechte am DAV besitzt.boolean
isOnline(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Flag ob ein bestimmter Benutzer im Moment an irgendeiner Applikation angemeldet ist.boolean
isRolleUndRegion(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRolle rolle, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRegion region)
Prüft ob ein bestimmter Benutzer eine bestimmte Rolle in einer Region hat.void
removeBenutzerListener(BenutzerListener l)
Meldet einen Listener wieder ab.void
removeLoginListener(LoginListener l)
Meldet einen Listener wieder ab.void
setBerechtigungsklasse(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse)
Ändert die Berechtigungsklasse eines Benutzer.void
setBerechtigungsklasse(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse, java.lang.String urlasser, java.lang.String ursache, java.lang.String veranlasser)
Ändert die Berechtigungsklasse eines Benutzer.void
setEinmalPassworte(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, java.util.List<java.lang.String> passworte)
Ändert die Berechtigungsklasse eines Benutzer.java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer>
sucheBenutzer(java.lang.String nachname, java.lang.String vorname, java.lang.String zweiterVorname, java.lang.String organisation, java.lang.String email)
Sucht alle Benutzer auf die bestimmte Kriterien zutreffen.void
updatePasswordCache(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer b, java.lang.String password)
Aktualisiert den Passwort-Cache des Benutzers
-
-
-
Field Detail
-
PRAEFIX_PID
public static final java.lang.String PRAEFIX_PID
Der Standardpräfix für die PID eines neuen Benutzer.- See Also:
- Constant Field Values
-
PID_KLASSE_KEIN_ZUGRIFF
public static final java.lang.String PID_KLASSE_KEIN_ZUGRIFF
PID der Berechtigungsklasse ohne jede Zugriffsrechte.- See Also:
- Constant Field Values
-
PID_KLASSE_ADMINISTRATOR
public static final java.lang.String PID_KLASSE_ADMINISTRATOR
PID der Berechtigungsklasse mit allen Zugriffsrechten.- See Also:
- Constant Field Values
-
PID_KLASSE_BEOBACHTER
public static final java.lang.String PID_KLASSE_BEOBACHTER
PID der Berechtigungsklasse mit allen Zugriffsrechten.- See Also:
- Constant Field Values
-
PID_REGION_ALLES
public static final java.lang.String PID_REGION_ALLES
PID der Zugriffsregion für alle Objekte.- See Also:
- Constant Field Values
-
PID_ROLLE_ADMINISTRATOR
public static final java.lang.String PID_ROLLE_ADMINISTRATOR
PID der Zugriffsroll mit allen Zugriffsrechten.- See Also:
- Constant Field Values
-
PID_ROLLE_PARAMETRIEREN
public static final java.lang.String PID_ROLLE_PARAMETRIEREN
PID der Zugriffsrolle die das Parametrieren erlaubt.- See Also:
- Constant Field Values
-
PID_ROLLE_BEOBACHTER
public static final java.lang.String PID_ROLLE_BEOBACHTER
PID der Zugriffsrolle die nur beobachten darf.- See Also:
- Constant Field Values
-
-
Method Detail
-
getInstanz
public static final Benutzerverwaltung getInstanz(de.bsvrz.sys.funclib.bitctrl.modell.ObjektFactory factory)
Liefert immer wieder dieselbeBenutzerverwaltung
für dieselbeObjektFactory
.- Parameters:
factory
- TODO- Returns:
- Instanz dieser Klasse
-
addLoginListener
public void addLoginListener(LoginListener l)
Registriert einen Listener an.- Parameters:
l
- ein Listener.
-
removeLoginListener
public void removeLoginListener(LoginListener l)
Meldet einen Listener wieder ab.- Parameters:
l
- ein Listener.
-
fireAngemeldet
protected void fireAngemeldet(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation applikation, com.bitctrl.util.Timestamp anmeldezeit)
Benachrichtigt die angmeldeten Listener über die Anmeldung eines Benutzers.- Parameters:
benutzer
- der betroffene Benutzer.applikation
- die betroffene Applikation.anmeldezeit
- der Anmeldezeitpunkt.
-
fireAbgemeldet
protected void fireAbgemeldet(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation applikation, com.bitctrl.util.Timestamp anmeldezeit)
Benachrichtigt die angmeldeten Listener darüber, dass sich ein Benutzer abgemeldet hat.- Parameters:
benutzer
- der betroffene Benutzer.applikation
- die betroffene Applikation.anmeldezeit
- der Anmeldezeitpunkt.
-
addBenutzerListener
public void addBenutzerListener(BenutzerListener l)
Registriert einen Listener an.- Parameters:
l
- ein Listener.
-
removeBenutzerListener
public void removeBenutzerListener(BenutzerListener l)
Meldet einen Listener wieder ab.- Parameters:
l
- ein Listener.
-
fireBenutzerAdded
protected void fireBenutzerAdded(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Benachrichtigt die angmeldeten Listener darüber, dass ein neuer Benutzer angelegt wurde.- Parameters:
benutzer
- der betroffene Benutzer.
-
fireBenutzerRemoved
protected void fireBenutzerRemoved(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Benachrichtigt die angmeldeten Listener darüber, dass ein Benutzer gelöscht wurde.- Parameters:
benutzer
- der betroffene Benutzer.
-
fireBenutzerChanged
protected void fireBenutzerChanged(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse berechtigungsklasse)
Benachrichtigt die angmeldeten Listener darüber, dass die Berechtigungsklasse eines Benutzer geändert wurde.- Parameters:
benutzer
- der betroffene Benutzer.berechtigungsklasse
- die Berechtigungsklasse des Benutzers.
-
getApplikation
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation getApplikation()
Gibt die lokale Klientapplikation zurück.- Returns:
- die lokale Applikation.
-
getAnmeldungen
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.attribute.AtlAngemeldeteApplikation> getAnmeldungen(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Gibt die Liste aller aktuell gültigen Anmeldungen eines Benutzers zurück.- Parameters:
benutzer
- ein Benutzer.- Returns:
- die Liste der Anmeldungen des Benutzers.
-
getAnmeldungen
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.attribute.AtlAngemeldeteApplikation getAnmeldungen(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Applikation applikation)
Gibt die Anmeldung zu einer Applikation zurück. Der Rückgabewert kannnull
sein, wenn es keine Anmeldung mehr zu dieser Applikation gibt, dass heißt sie wurde beendet.- Parameters:
applikation
- eine Applikation.- Returns:
- die aktuelle Anmeldung der Applikation.
-
getAngemeldetenBenutzer
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer getAngemeldetenBenutzer()
Gibt den lokal angemeldeten Benutzer zurück.- Returns:
- der angemeldete Benutzer.
-
getBenutzer
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer> getBenutzer()
Gibt eine Liste aller Benutzer im System zurück.- Returns:
- die Benutzerliste.
-
getBenutzer
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer> getBenutzer(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse)
Gibt eine Liste aller Benutzer zurück, die einer bestimmten Berechtigungsklasse angehören.- Parameters:
klasse
- eine Berechtigungsklase.- Returns:
- die Benutzerliste.
-
getBerechtigungsklasse
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse> getBerechtigungsklasse()
Gibt eine Liste aller Berechtigungsklassen im System zurück.- Returns:
- die Liste der Berechtigungsklassen.
-
getBenutzerUndKlassen
public java.util.Map<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer,de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse> getBenutzerUndKlassen()
Gibt eine Zusammenstellung aller Benutzer im System und deren Benutzerklasse zurück.- Returns:
- die aktuelle Rechteverteilung.
-
isDAVAdmin
public boolean isDAVAdmin(java.lang.String loginname, java.lang.String passwort)
Prüft, ob ein Bennutzer Administratorrechte am DAV besitzt. Administratoren dürfen u. a. Benutzer löschen, Passworte anderer Benuzter ändern und Autorisierungspassworte für andere Benuzter anlegen.
Da sich der Zustand des Admin-Flags derzeit nicht direkt über das DAV-API ermitteln läßt, hilft folgender Trick: Man versucht den Benuzter mit sich selbst zum Admin zu machen, klappt dies, so ist er bereits Admin gewesen, ansonsten ist er kein Admin.- Parameters:
loginname
- ein Nutzernamepasswort
- das Passwort des Benutzers- Returns:
true
, wenn der Bennutzer Administratorrechte besitzt.
-
isBerechtigungsklasse
public boolean isBerechtigungsklasse(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse)
Prüft ob ein bestimmter Benutzer zu einer bestimmten Berechtigungsklasse gehört.- Parameters:
benutzer
- ein Benutzer.klasse
- eine Berechtuigungsklasse.- Returns:
true
, wenn der Benutzer zu der Berechtigungsklasse gehört.
-
getBerechtigungsklasse
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse getBerechtigungsklasse(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Bestimmt die aktuelle Berechtigungsklasse des Benutzers.- Parameters:
benutzer
- ein Benutzer.- Returns:
- die Berechtigungsklasse des Benutzers.
-
isRolleUndRegion
public boolean isRolleUndRegion(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRolle rolle, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRegion region)
Prüft ob ein bestimmter Benutzer eine bestimmte Rolle in einer Region hat.- Parameters:
benutzer
- ein Benutzer.rolle
- eine Zugriffsrolle.region
- eine Zugriffsregion. Wennnull
, wird die Region ignoriert und nur die Rolle geprüpft.- Returns:
true
, wenn der Benutzer in der Region die angegebene Rolle hat.
-
getBerechtigungsklasse
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse getBerechtigungsklasse(java.lang.String pid)
Sucht eine bestimmte Berechtigungsklasse.- Parameters:
pid
- die PID einer Berechtigungsklasse.- Returns:
- die Berechtigungsklasse oder
null
, wenn zu der PID keine existiert.
-
getRolle
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRolle getRolle(java.lang.String pid)
Sucht eine bestimmte Zugriffsrolle.- Parameters:
pid
- die PID einer Zugriffsrolle.- Returns:
- die Zugriffsrolle oder
null
, wenn zu der PID keine existiert.
-
getRolle
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRolle> getRolle()
Gibt eine Liste aller Zugriffsrollen im System zurück.- Returns:
- die Liste der Zugriffsrollen.
-
getRegion
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRegion getRegion(java.lang.String pid)
Sucht eine bestimmte Zugriffsregion.- Parameters:
pid
- die PID einer Zugriffsregion.- Returns:
- die Zugriffsregion oder
null
, wenn zu der PID keine existiert.
-
getRegion
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.ZugriffsRegion> getRegion()
Gibt eine Liste aller Zugriffsregionen im System zurück.- Returns:
- die Liste der Zugriffsregionen.
-
getBenutzer
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer getBenutzer(java.lang.String loginname)
Prüft ob ein bestimmter Benutzer existiert und gibt ihn zurück.- Parameters:
loginname
- der eindeutige Benutzername (Loginname).- Returns:
- der Benutzer oder
null
, wenn kein Benutzer mit dem angegebenen Namen existiert.
-
sucheBenutzer
public java.util.List<de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer> sucheBenutzer(java.lang.String nachname, java.lang.String vorname, java.lang.String zweiterVorname, java.lang.String organisation, java.lang.String email)
Sucht alle Benutzer auf die bestimmte Kriterien zutreffen. Die Suchkriterien dürfen auchnull
sein, dies wird als Wildcard "alle" gedeutet. Die einzelnen Kriterien werden "oder"-verknüpft.- Parameters:
nachname
- der Nachname der gesuchten Benutzer.vorname
- der Vorname der gesuchten Benutzer.zweiterVorname
- der zweite Vorname der gesuchten Benutzer.organisation
- die Organisation der gesuchten Benutzer.email
- die E-Mail-Adresse der gesuchten Benutzer.- Returns:
- die Liste der gefundenen Benutzer, niemals
null
.
-
anlegenBenutzer
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer anlegenBenutzer(java.lang.String adminLoginname, java.lang.String adminPasswort, BenutzerInfo benutzerInfo, boolean adminRechte) throws KeineRechteException, BenutzerChangeException
Legt einen neuen Benutzer an. Das Anlegen erfolgt unabhängig von Berechtigungsklassen nur unter Prüfung der entsprechenden Rechte am DAV.- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt.benutzerInfo
- die Eigenschaften des neuen Benutzers.adminRechte
-true
, wenn der neue Benutzer die Rechte eines Administrators besitzen soll;false
, wenn der Benutzer keine speziellen Rechte besitzen soll.- Returns:
- der neue Benutzer
- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn beim Anlegen des Benutzers ein Fehler eintrat.
-
entfernenBenutzer
public void entfernenBenutzer(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer) throws KeineRechteException, BenutzerChangeException
Deaktiviert und löscht einen Benutzer. Das entsprechende Systemobjekt wird invalidiert.- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt. Wird derzeit ignoriert, da es nicht benötigt wird!benutzer
- der zu löschende Benutzers.- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn beim Löschen des Benutzers ein Fehler eintrat.
-
setBerechtigungsklasse
public void setBerechtigungsklasse(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse, java.lang.String urlasser, java.lang.String ursache, java.lang.String veranlasser) throws KeineRechteException, BenutzerChangeException
Ändert die Berechtigungsklasse eines Benutzer.- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt.benutzer
- der zu deaktivierende Benutzers.klasse
- die zu setzende Berechtigungsklasse.urlasser
- der Nutzername des Urlassers.ursache
- Ursache zur Urlasserinformationveranlasser
- Veranlasser zur Urlasserinformation- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn beim Ändern der Benutzerrechte ein Fehler eintrat.
-
setEinmalPassworte
public void setEinmalPassworte(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, java.util.List<java.lang.String> passworte) throws KeineRechteException, BenutzerChangeException
Ändert die Berechtigungsklasse eines Benutzer.- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt.benutzer
- der zu deaktivierende Benutzers.passworte
- Liste der Einmalpassworte- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn beim Ändern der Benutzerrechte ein Fehler eintrat.
-
isOnline
public boolean isOnline(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer)
Flag ob ein bestimmter Benutzer im Moment an irgendeiner Applikation angemeldet ist.- Parameters:
benutzer
- ein Benutzer.- Returns:
true
, wenn der Benutzer online ist.
-
checkPasswort
public java.lang.String checkPasswort(java.lang.String passwort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, PasswortInfo passwortInfo)
Prüft ein neues Passwort auf seine Sicherheit. Die Funktion wertet die für die Vergabe von Passworten definierten Parameter aus und prüft, ob das Passwort diesen Kriterien entspricht.- Parameters:
passwort
- das Passwort.benutzer
- der Nutzer, für den das Passwort verwendet werden soll.passwortInfo
- die Sicherheitskriterien.- Returns:
null
, wenn das Passwort sicher ist, sonst eine Fehlerbeschreibung. TODO Prüfen ob alle Sicherheitsaspekte geprüft werden.
-
getCachedPasswort
public java.lang.String getCachedPasswort(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer b)
Liefert das gecachte Passwort eines Benutzers.- Parameters:
b
- der Benutzer- Returns:
- das gecachte Passwort oder null, wenn es keines gibt
-
invalidatePasswordCache
public void invalidatePasswordCache(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer b)
Löscht das gecachte Passwort für den Benutzer- Parameters:
b
- der betroffene Benutzer
-
updatePasswordCache
public void updatePasswordCache(de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer b, java.lang.String password)
Aktualisiert den Passwort-Cache des Benutzers- Parameters:
b
- der betroffene Benutzerpassword
- das neue Passwort
-
aendernPasswort
public de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer aendernPasswort(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, java.lang.String neuesPasswort) throws KeineRechteException, BenutzerChangeException
Ändert das Anmeldekennwort eines Benutzer. Das Ändern erfolgt unabhängig von Berechtigungsklassen nur unter Prüfung der entsprechenden Rechte am DAV.- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt.benutzer
- der Benutzer, dessen Passwort geändert werden soll.neuesPasswort
- das neue Passwort des Benutzer.- Returns:
- der neue Benutzer
- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn beim Anlegen des Benutzers ein Fehler eintrat.
-
isAdmin
public boolean isAdmin(java.lang.String loginname)
Prüft, ob ein Bennutzer der BerechtigungsklassePID_KLASSE_ADMINISTRATOR
zugeordnet ist.- Parameters:
loginname
- ein beliebiger Nutzername- Returns:
true
, wenn der Bennutzer Administratoraufgaben ausführen darf.
-
deaktiviereBenutzer
public void deaktiviereBenutzer(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer) throws KeineRechteException, BenutzerChangeException
Deaktiviert einen Benutzer. Seine Berechtigungsklasse wird auf "Kein Zugriff" gesetzt.TODO Passwort überprüfen.
- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt. Wird derzeit ignoriert, da es nicht benötigt wird!benutzer
- der zu deaktivierende Benutzers.- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn es beim deaktivieren einen Fehler gab.
-
setBerechtigungsklasse
public void setBerechtigungsklasse(java.lang.String adminLoginname, java.lang.String adminPasswort, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Benutzer benutzer, de.bsvrz.sys.funclib.bitctrl.modell.systemmodellglobal.objekte.Berechtigungsklasse klasse) throws KeineRechteException, BenutzerChangeException
Ändert die Berechtigungsklasse eines Benutzer.- Parameters:
adminLoginname
- der Name des Administrators der die Aktion ausführt.adminPasswort
- das Anmeldekennwort des Administrators der die Aktion ausführt.benutzer
- der zu deaktivierende Benutzers.klasse
- die zu setzende Berechtigungsklasse.- Throws:
KeineRechteException
- wenn die Benutzerrechte für diese Aktion nicht ausreichen.BenutzerChangeException
- wenn beim Ändern der Benutzerrechte ein Fehler eintrat.
-
-