Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 670f76a8

Von Moritz Bunkus vor etwa 12 Jahren hinzugefügt

  • ID 670f76a86aaf642bf1a6b5b37cdc023f8fdfc79c
  • Vorgänger d28dde0f
  • Nachfolger a3339fc7

Formularfelder und Session-Keys für Logins umbenannt

Ziel: Ermöglichen, dass Login & Passwort auch wieder per
Formularfelder mit jedem Request übertragen werden, aber nicht mehr so
offensichtlich im "Formularfeldernamensraum" rumgeistern -- sondern
leicht aussortierbar sind. Die Formularfelder, die mit "{AUTH}"
starten, werden vom Dispatcher nach erfolgter Loginüberprüfung
automatisch entfernt, bevor die Kontrolle an die Controller/Actions
übergeben wird (unabhängig vom Routingtyp).

Vorher waren Formularfelder sowie die Session-Keys für User-Logins
"login" und "password", für Admin-Login "rpw".

Jetzt:
- Formularfelder: für User-Logins "{AUTH}login" und "{AUTH}password",
für Admin-Login "{AUTH}admin_password".
- Session-Keys: jeweils ohne "{AUTH}", sprich für User-Logins
weiterhin "login" und "password", für Admin-Login neu
"admin_password".

Unterschiede anzeigen:

bin/mozilla/admin.pl
95 95
  $form->{favicon}    = "favicon.ico";
96 96

  
97 97
  if ($form->{action}) {
98
    if ($auth->authenticate_root($form->{rpw}) != $auth->OK()) {
98
    if ($auth->authenticate_root($form->{'{AUTH}admin_password'}) != $auth->OK()) {
99 99
      $form->{error_message} = $locale->text('Incorrect Password!');
100
      $auth->delete_session_value('rpw');
100
      $auth->delete_session_value('admin_password');
101 101
      adminlogin();
102 102
    } else {
103 103
      if ($auth->session_tables_present()) {
104
        delete $::form->{rpw};
104
        delete $::form->{'{AUTH}admin_password'};
105 105
        _apply_dbupgrade_scripts();
106 106
      }
107 107

  
......
194 194
  my $locale = $main::locale;
195 195

  
196 196
  $main::auth->create_tables();
197
  $main::auth->set_session_value('rpw', $form->{rpw});
197
  $main::auth->set_session_value('admin_password', $form->{'{AUTH}admin_password'});
198 198
  $main::auth->create_or_refresh_session();
199 199

  
200 200
  my $memberfile = $::lx_office_conf{paths}->{memberfile};

Auch abrufbar als: Unified diff