Frage: Ist es möglich Mybb so zu konfigurieren, dass die aktuelle Szession beendet wird, sobald der Browser geschlossen wird?
Hintergrund:
Wenn ein angemeldetes Mitglied den Browser schließt und dann wieder öffnet, ist er sofort wieder angemeldet.
Dies ist aber nicht erwünscht und das Mitglied soll so gezwungen werden, sich beim Öffnen des Browsers neu anzumelden.
Damit soll der Datenschutz erhöht werden. Wenn zum Beispiel jemand sich nicht abmeldet (zum Beispiel im Internet-Cafe), soll der Blick ins Forum für Unbefugte erhöht werden.
Das Schließen des Browsers wird nicht vom Server registriert. Allerdings gibt es im Benutzer-CP die Optionen "Bei Rückkehr automatisch einloggen.".
Schön und gut, aber kann man diese Funktion nicht im Admin-CP deaktivieren, so dass diese Funktion dem Mitglied gar nicht erst zur Verfügung steht?
Im Admin-CP nicht, aber Du könntest den folgenden Code der Funktion im Template "Benutzer Control-Panel Templates --> usercp_options" löschen oder auskommentieren, so dass er nicht angezeigt wird.
Code:
<tr>
<td valign="top" width="1"><input type="checkbox" class="checkbox" name="remember" id="remember" value="yes" {$remembercheck} /></td>
<td><span class="smalltext"><label for="remember">{$lang->remember_me}</label></span></td>
</tr>
Anschließend kannst Du noch per SQL-Query (mittels phpMyAdmin, etwas ähnlichem oder
diesem Plugin) die Einstellung global für alle User nach Deinen Wünschen setzen. Zuvor aber, für den Fall der Fälle, eine Sicherung der Datenbank erstellen!
Automatisches einloggen
aktiviert:
Code:
UPDATE mybb_users SET remember = 'yes';
Automatisches einloggen
DE-aktiviert:
Code:
UPDATE mybb_users SET remember = 'no';
Hmm, irgendwie bin ich zu doof dazu oder irgendetwas läuft hier verkehrt.
Ich habe in der usercp_options die hervorgehobenen Zeilen gelöscht.
Anschließend habe ich mittels mysql Administrator den Wert von "yes" auf "no" gesetzt, dieses wurde auch anstandslos übernommen.
<legend><strong>{$lang->login_cookies_privacy}</strong></legend>
<table cellspacing="0" cellpadding="2">
<tr>
<td valign="top" width="1"><input type="checkbox" class="checkbox" name="invisible" id="invisible" value="yes" {$invisiblecheck} /></td>
<td><span class="smalltext"><label for="invisible">{$lang->invisible_mode}</label></span></td>
</tr>
<tr>
<td valign="top" width="1"><input type="checkbox" class="checkbox" name="remember" id="remember" value="no" {$remembercheck} /></td>
<td><span class="smalltext"><label for="remember">{$lang->remember_me}</label></span></td>
</tr>
</table>
</fieldset>
<br />
<fieldset class="trow2">
Jetzt ist mir bei einer Neuregistrierung aufgefallen, dass beim neuen Mitglied das Feld zwar nicht angezeigt wird, aber der "Remember"-Wert in der Datenbank auf "yes" gesetzt wurde.
Wenn ich mir das jetzt so richtig überlege, dann müssten doch noch irgendwo Settings für Neuregistrierungen verändert werden, oder sehe ich das falsch?
Ich kann´s momentan leider nicht testen, aber versuch mal das:
Suche in der Datei "/inc/datahandlers/user.php" (~Zeile 498) nach:
PHP-Code:
$this->verify_yesno_option($options, 'remember', 'yes');
und ändere da den Wert von 'yes' nach 'no'
Klasse Info!
Habe es gerade geändert und getestet. Nun funktionierts auch bei Neuregistrierungen.
Danke.