def checkAuth(self): """Holt Benutzername aus der Session, prüft Benutzerberechtigung. Setzt self.user, self.mitarbeiter, self.stelle""" # auto_user = '******' # so ist das Entwickeln einfacher auto_user = '' # so sollte es im Betrieb sein if auto_user: self.session = get_session(self.REQUEST, self.RESPONSE) if self.session: self.user = self.session.user else: self.session = create_session(auto_user, self.RESPONSE) self.user = self.session.user self.mitarbeiter = ebapi.Mitarbeiter(ben=self.user, stat=ebapi.cc('status', 'i')) self.stelle = ebapi.Code(self.mitarbeiter['stz']) if self.mitarbeiter['benr__code'] not in self.permissions: raise KeineZugriffsberechtigung() return self.session = get_session(self.REQUEST, self.RESPONSE) if self.session: self.user = self.session.user else: raise NichtIdentifiziert() self.mitarbeiter = ebapi.Mitarbeiter(ben=self.user, stat=ebapi.cc('status', 'i')) self.stelle = ebapi.Code(self.mitarbeiter['stz']) if self.mitarbeiter['benr__code'] not in self.permissions: raise KeineZugriffsberechtigung()
def checkAuth(self): """Überschreibt Request.checkAuth. Prüft anhand der Session, ob zwei protokollberechtigte Benutzer angemeldet sind.""" self.session = get_session(self.REQUEST, self.RESPONSE) if self.session: self.user = self.session.user else: raise Request.NichtIdentifiziert() mitarbeiter1 = self.mitarbeiter = Mitarbeiter(ben=self.user, stat=cc('status', 'i')) # nun das protokoll-spezifische try: user1 = self.session.data['protokollbenutzer1'] user2 = self.session.data['protokollbenutzer2'] assert user1 == self.user mitarbeiter2 = Mitarbeiter(ben=user2, stat=cc('status', 'i')) assert mitarbeiter1['benr__code'] in self.permissions assert mitarbeiter2['benr__code'] in self.permissions except: return zugriffVerweigert()
def checkAuth(self): """Überschreiben der checkAuth-Methode von Request. Damit wird kein seltsamer 'login'-User mehr gebraucht.""" self.session = get_session(self.REQUEST, self.RESPONSE) if self.session: self.session.expire(self.RESPONSE)