Passwortwechsel verhindern

Alles, was nicht in die anderen Foren passt, kannst du hier loswerden.
Antworten
andrehe
Beiträge: 20
Registriert: 28. Jan 2010, 09:14

Passwortwechsel verhindern

Beitrag von andrehe »

Moin zusammen.

Ich würde gerne einen Demo-User einrichten. Damit auch derjenige, der nach dem SpaßvogelHacker kommt, sich noch mit dem angegebenen Passwort anmelden kann, soll das Passwort nicht geändert werden können. Kann ich das irgendwie einrichten? Die Demo-Version hier muss das ja auch irgendwie leisten.

Gruß
Andre
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Beitrag von matzman2000 »

Hallo Andre,

klar geht das. Eine kurze Anpassung in der Datei admidio\adm_program\modules\profile\password.php ist notwendig. Füge unter Zeile 32 folgenden Code ein:

Code: Alles auswählen

if($g_current_user->isWebmaster() == false && isset($_GET['usr_id']) && $_GET['usr_id'] == USERID DEINES DEMOBENUTZERS)
{
    $g_message->show('norights', '', '', false);
}
Was macht dieser Code? Es wird geprüft ob der Benutzer, der das Kennwort ändern will, Webmaster ist. Wenn ja, darf er es ändern. Wenn nicht, wird weiter geprüft, ob der Benutzer eine bestimmte ID hat (die ID Deines Demobenutzers). Wenn ja, wird eine Hinweismeldung zur Anzeige gebracht "Keine Rechte".

Das dürfte wohl das erfüllen, was Du möchtest.

In unserem Demobereich läuft es im übrigen nicht so. Da wird das Passwort regelmässig per Job zurückgedreht.

Gruss,
Matze
AndreHa
Beiträge: 26
Registriert: 15. Jan 2010, 14:39

Beitrag von AndreHa »

Hallo Matze.
Danke für die schnelle Antwort.
Leider hab ich's gerade erst ausprobieren könnnen.. aber es klappt leider so nicht.

Da ich nu von PHP gerade mal so viel Ahnung habe wie die Kuh vom Fliegen schließe ich natürlich einen Fehler meinerseits nicht aus. Ich hab das hier in die passwort.php eingefügt (Zeilen 29 - 42)

Code: Alles auswählen

if(isset($_GET['usr_id']) && is_numeric($_GET['usr_id']) == false)
{
    $g_message->show('invalid', '', '', false);
}
// Hack damit die User Mitglied und Vorstand das Passwort nicht wechseln können 
if($g_current_user->isWebmaster() == false && isset($_GET['usr_id']) && $_GET['usr_id'] == Vorstand)
{
    $g_message->show('norights', '', '', false);
}
// Ende Hack Passwortsperre
if(isset($_GET['mode']) && is_numeric($_GET['mode']) && $_GET['mode'] == 1)
{
    /***********************************************************************/
    /* Formular verarbeiten */
Der Benutzer heißt also "Vorstand". Ah ja... und der Benutzer "Mitgleid" soll sein Passwort auch nicht ändern können...
(Schönen Gruß von der Kuh, die steht grad aus irgendeinem Grund auf dem Hügel... :wink:)
Andre
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Beitrag von matzman2000 »

Hall Andre,

ich hatte geschrieben USERID DEINES DEMOBENUTZERS. Damit ist tatsächlich die ID des Users gemeint, nicht der Benutzername. Du musst halt schauen, welche ID Dein Benutzer hat und diese dort eintragen. Dann klappt es auch...

Gruss,
Matze

Ps. Immer noch zwei Usernamen hier im Forum? Macht immer noch keinen Sinn den einen von der Firma und den anderen von zu Hause aus zu nutzen....
AndreHa
Beiträge: 26
Registriert: 15. Jan 2010, 14:39

Beitrag von AndreHa »

Hi Matze.

Eieiei ... hier muss man seine Ahnungslosigkeit schonungslos offenbaren ...peinlich peinlich :lol:

Also denn: Wo krieg ich denn die UserID raus.. und wie kann ich dann direkt 2 eingeben, die nicht Ändern dürfen? (ich dachte halt, Benutzername= UserID...

-ich hab schon versucht, den Andrehe ins Jenseits zu schicken... ich find aber weder unter Profil noch bei de FAQ nen Hinweis, wie ich mich selber löschen kann... hab ich Tomaten auf den Augen?
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Beitrag von matzman2000 »

Wenn Du das Profil des Users bearbeitest, siehst Du die ID zB in der Adressleiste:
Bild

Bzgl. Deines Forenusers: PN an fasse schicken, welcher User gelsöcht werden soll. Mir ging es eigentlich nur darum, dass Du nur einen User nutzt. Man kommt mit den Namen sonst ein bisserl durcheinander...
AndreHa
Beiträge: 26
Registriert: 15. Jan 2010, 14:39

Beitrag von AndreHa »

...ich komm ja selbst durcheinander ...
OK, ich PN Fasse gleich mal an.

So, ich hab also auf diese Weise jetzt rausgefunden, dass die UserIDs 2 und 3 sind.
Muss ich also jetzt

// Hack damit die User Mitglied und Vorstand das Passwort nicht wechseln können
if($g_current_user->isWebmaster() == false && isset($_GET['usr_id']) && $_GET['usr_id'] == 1 or 2)
{
$g_message->show('norights', '', '', false);
}
// Ende Hack Passwortsperre


schreiben? (das ist bestimmt falsch so...)
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Beitrag von matzman2000 »

Ohne es getestet zu haben, müsste es so lauten:

Code: Alles auswählen

// Hack damit die User Mitglied und Vorstand das Passwort nicht wechseln können
if($g_current_user->isWebmaster() == false && isset($_GET['usr_id']) && ($_GET['usr_id'] == 2 || $_GET['usr_id'] == 3))
{
$g_message->show('norights', '', '', false);
}
// Ende Hack Passwortsperre 
AndreHa
Beiträge: 26
Registriert: 15. Jan 2010, 14:39

Beitrag von AndreHa »

Hi Matze!

Super, das war's, danke.

Andre

P.S.: Den AndreHe kann Fasse leider nicht ohne größeren Aufwand löschen, als muss er leider als Zombie besten bleiben.
Antworten