Jump to content
Froxlor Forum
  • 0

[solved] Wie kann ich den Passwortvorschlag beeinflussen?


StefanKittel

Question

Hallo,

 

ich habe den Regul?rer Ausdruck f?r Passw?rter ge?ndert.

/(?=^.{6,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/

 

Funktioniert auch Prima, aber der Kennwortvorschlag pa?t leider nicht.

Das dort vorgeschlagene Kennwort ist "zu einfach".

 

Wo kann ich den Vorschlag anpassen oder abschalten?

 

Danke

 

Stefan

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

Hi Stefan,

 

das ist leider nicht m?glich der Passwortvorschlag ist noch hart in Froxlor eingebaut und nimmt einfach 6 Zeichen eines MD5 Hashes der aus irgendwelchen Daten gebildet wird. Entsprechend ?ndert sich der Vorschlag auch nicht wenn du einen anderen Regex zur Passwort Validierung w?hlst.

 

Damit du Passwortvorschl?ge erstellen kannst die den Regex matchen musst du daf?r den Regex in z.B. eine Kontextfreie Grammatik umwandeln und aus dieser entsprechende W?rter ableiten. Ist nicht ganz trivial (wenn du auch noch sicherstellen willst das nicht jeder Benutzer immer den selben Vorschlag sehen soll sondern alle W?rter mit ner gewissen Wahrscheinlichkeit auftauchen). Soweit ich wei? gibt f?r PHP kein Plugin/Funktion die sowas erm?glicht. Hab sowas mal geplant zu basteln, bin bis dato aber noch nicht dazu gekommen.

 

Vielleicht sollte f?r den Fall das Froxlor einen anderen Regex f?r die Passw?rter verwendet, der Passwort Vorschlag entfernt werden. Kannst ja entsprechend ein Ticket im Tracker aufmachen.

Link to comment
Share on other sites

das ist leider nicht m?glich der Passwortvorschlag ist noch hart in Froxlor eingebaut und nimmt einfach 6 Zeichen eines MD5 Hashes der aus irgendwelchen Daten gebildet wird. Entsprechend ?ndert sich der Vorschlag auch nicht wenn du einen anderen Regex zur Passwort Validierung w?hlst.

 

Hallo,

 

Wei?t Du zuf?llig wo? Oder Jemand anders?

 

Danke

 

Stefan

Link to comment
Share on other sites

Hallo,

 

es gibt zun?chst die lib/functions/froxlor/function.generatePassword.php

 

diese l?sst sich anhand der Seite http://www.inside-php.de/scripte/PHP-Code%20Ausschnitte-18/Erweiterter-Passwort-Generator.html entsprechend erweitern.

 

Zus?tzlich findest Du jedoch noch in den files index.php, admin_customers.php und customer_email.php die Zeilen

$password = substr(md5(uniqid(microtime(), 1)), 12, 6);

 

Gru?

Mathias

Link to comment
Share on other sites

Hallo zusammen,

 

ich habe nun die Datei "var www froxlor lib functions froxlor function.generatePassword.php" modifiziert und bin ganz zufrieden.

 

F?r alle die es interessiert.

 

Stefan

 

PS: Basiert auf http://www.script.skittel.de/common/password.php

 

<?php

/**
* This file is part of the Froxlor project.
* Copyright (c) 2011- the Froxlor Team (see authors).
*
* For the full copyright and license information, please view the COPYING
* file that was distributed with this source code. You can also view the
* COPYING file online at http://files.froxlor.org/misc/COPYING.txt
*
* @copyright  (c) the authors
* @author	 Froxlor team <team@froxlor.org> (2011-)
* @license	GPLv2 http://files.froxlor.org/misc/COPYING.txt
* @package	Functions
*
*/

/**
* Generates a random password
*/

function createPassword($length, $chars, $verifyRegEx)
{
$password = "";
while (strlen($password) < $length)
{
	$char = $chars{mt_rand(0,strlen($chars))};

	if (ord($char) > 0)
	{
		$password .= $char;
	}
}

if (preg_match($verifyRegEx, $password) == TRUE)
{
	return $password;
}
else
{
	return createPassword($length, $chars, $verifyRegEx);
}
}

function generatePassword()
{
$chars = "23456789abcdefghjkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ";
$verifyRegEx = "/(?=.*\d)(?=.*[A-Z])(?=.*[a-z]).*$/";
return createPassword(10, $chars, $verifyRegEx);

global $db, $settings;

return substr(md5(uniqid(microtime(), 1)), 24, 10);
}

?>

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...