IPB

Willkommen, Gast ( Anmelden | Registrierung )

 
Reply to this topicStart new topic
> Call in Index.php, How to use RTCMS User Login
Wertung 5 V
jan
Beitrag Nov 16 2005, 15:52 PM
Beitrag #1


Administrator
***

Gruppe: Admin
Beiträge: 552
Mitglied seit: 1-June 05
Wohnort: germany, hassia, bickenbach
Mitglieds-Nr.: 1



Der Login und die damit verbundene Funktionalität wird mit folgenden zwei Codeblöcken aufgerufen. Einer ist für Cookie und einer für Sessioncheck und Login-Forward. Das ganze einfach in den Head der index.php kopieren und noch etwas anpassen. Ist nicht getestet.
Es könnte vor allem wichtig sein, etwas zu unternehmen, wenn der Login nicht erfolgreich war.

CODE

<?php
/*
* neues session-check modul von rtcms_users modul
* voll funktionsfähig
* *************************************************************************** *
* nur für das neue cms
* *************************************************************************** *
*/
if($_REQUEST['cms'] == 1)
{
if($_REQUEST['sessionid'])
{
$this->user_ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
$this->user_id = $rtcms_users->check_session($_REQUEST['sessionid']);
if($this->user_id == "" || !$this->user_id)
{
/*
* die session ist nicht gültig
*/
print("No luck haXxing into the Site...<br>");
} else
{
/*
* diese user_id kann man überall auf der
* site verwenden
*/
$rtcms_site_user_id = $this->user_id;
$this->login_store_array = $rtcms_users->read_user_login($this->user_id);
/*
* die vals in ein array packen, ist einfacher
* zu handlen
*/
$rtcms_site_user['user_id'] = $this->user_id;
$rtcms_site_user['login_count'] = $this->login_store_array['login_count'];
$rtcms_site_user['login_stamp'] = $this->login_store_array['login_stamp'];
print($this->user_id);
}
}

}
?>
<?php
/*
* setzt den cookie für das rtcms-user-login modul
* voll funktionsfähig mit verschlüsselung durch md5 und bin2hex
* einfach den kompletten codeblock kopieren und in den head der
* seite einfügen - aufruf über die checkbox in
* /rtcms/modules/rtcms_users/user/login.php
* *************************************************************************** *
* nur für den user-cookie
* *************************************************************************** *
*/
/*
* setzen des cookies, wenn $HTTP_POST_VARS['setCookie'] ankommt
*/
if($HTTP_POST_VARS['setUserCookie']){
$cExpires = time() + $rtcms['module']['users']['cookieLifetime'];
/*
* codieren mit einfachem bin2hex
*/
$tmp_usr_nick = md5("usr_nick");
$tmp_usr_nick_val = bin2hex($HTTP_POST_VARS['usr_nick']);
$tmp_usr_pass = md5("usr_pass");
$tmp_usr_pass_val = bin2hex($HTTP_POST_VARS['usr_pass']);
$newCookieValues[] = $tmp_usr_nick."@@@".$tmp_usr_nick_val."@@@";
$newCookieValues[] = $tmp_usr_pass."@@@".$tmp_usr_pass_val;
/* rausgenommen, weil wir nur die voteId brauchen $HTTP_POST_VARS['optionId']."]";
setzen des neuen cookies mit alten und neuen werten */
set_the_cookie("rtcmsUsers",$newCookieValues,$cExpires);
}
/*
* holen und lesen eines vorhandenen cookies
*/
if($HTTP_COOKIE_VARS['rtcmsUsers']){
$this->finValues = explode("@@@",$HTTP_COOKIE_VARS['rtcmsUsers']);
$this->usr_nick = $rtcms_users->hex2bin($this->finValues[1]);
$this->usr_pass = $rtcms_users->hex2bin($this->finValues[4]);
/*
* global available machen
*/
$rtcms_site_user = $this->usr_nick;
$rtcms_site_user_pass = bin2hex($this->usr_pass); # sicherer
$rtcms_site_user['usr_nick'] = $rtcms_site_user;
$rtcms_site_user['usr_pass'] = $rtcms_site_user_pass;
# print("user: ".$this->usr_nick);
# print("<br>pass: ".$this->usr_pass);
}
?>
  • Cookie erneuern
  • Sessionfunktionen überprüfen. Gibt es einen timed logout?
  • Online Users von Warplaner kopieren
  • User-Status Array od. Objekt (letzter Login, Logins insgesamt)


--------------------
Go to the top of the page
 
+Quote Post
jan
Beitrag Aug 24 2006, 14:18 PM
Beitrag #2


Administrator
***

Gruppe: Admin
Beiträge: 552
Mitglied seit: 1-June 05
Wohnort: germany, hassia, bickenbach
Mitglieds-Nr.: 1



Wie sehen die Passwörter aus??
  • Keine Plaintext Passwörter in den Cookie schreiben.
  • Die in den Cookies gespeicherten Kennwörter noch einmal mit einer Funktion de- und enkodieren
  • Passwort als MD5 Hash in die DB schreiben =>
  • Neuschreiben der Passwort zuschicken funktion, bzw. ersetzen mit Passwort neu erstellen, wie in allen gängigen Foren etc.. nur so ist es sicher
  • Timestamp des letzten Besuchs im Cookie festhalten


--------------------
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
2 Besucher lesen dieses Thema (Gäste: 2 | Anonyme Besucher: 0)
0 Mitglieder:

 

- Vereinfachte Darstellung Aktuelles Datum: 23rd June 2018 - 09:07 AM