Script zur Überprüfung von Benutzername und Passwort
Roberto Cozzetto
- javascript
Hallo zusammen
Auf meiner privaten Seite möchte ich ein ganz simples LogIn-Verfahren einfügen. Sicherheit muss keine gegeben sein, denn auf meiner Seite greifen lediglich 8 Benutzer (Kollegen) zu.
Ich habe ein Formular mit den zwei Texteingabefeldern "username" und "password". Ich suche nun ein Script, welches beim Absenden des Formulars die 8 möglichen Kombinationen aus username & password checkt, zB
username1 + password1
username2 + password2
etc.
Falls eine richtige Eingabe erfolgt (zB username1 + password1) soll der User1 auf seine Einstiegsseite user1.htm weitergeleitet werden; dies auch für die weiteren sieben User, welche jedoch andere Zugangsdaten haben (zB username2 + password2, username3 + password3 etc)
Falls jedoch die Eingabe inkorrekt ist, soll ein Alertfenster mit dem Hinweis erscheinen, und der User zurück zum LogIn gelangen.
Wie kann ich dies am einfachsten mittels Javascript prüfen?
Danke für eure Hilfe und Gruss aus der Schweiz.
Tag Roberto.
Auf meiner privaten Seite möchte ich ein ganz simples LogIn-Verfahren einfügen. Sicherheit muss keine gegeben sein, denn auf meiner Seite greifen lediglich 8 Benutzer (Kollegen) zu.
Du weißt aber schon, dass jeder, der den Quelltext der Seite lesen kann, auch an die Usernamen und die Passwörter kommt? Besser wäre m.E., einfach den Usernamen abzufragen und auf die Seite username.html mittels window.location.href weiterzuleiten. Oder du nutzt gleich die Möglichkeit des Verzeichnisschutzes mit Hilfe von htaccess.
Siechfred
Tag Roberto.
Auf meiner privaten Seite möchte ich ein ganz simples LogIn-Verfahren einfügen. Sicherheit muss keine gegeben sein, denn auf meiner Seite greifen lediglich 8 Benutzer (Kollegen) zu.
Du weißt aber schon, dass jeder, der den Quelltext der Seite lesen kann, auch an die Usernamen und die Passwörter kommt? Besser wäre m.E., einfach den Usernamen abzufragen und auf die Seite username.html mittels window.location.href weiterzuleiten. Oder du nutzt gleich die Möglichkeit des Verzeichnisschutzes mit Hilfe von htaccess.
Siechfred
Hallo, danke für deine rasche Antwort. Wie bereits im ersten Topic erwähnt, ist die Sicherheit in diesem Fall kein Thema; es ist mir bewusst, dass die hinterlegten PW's im JavaScript gelesen werden können.
Mir gehts mehr darum, einen möglichst realen Login darzustellen, also effektiv mit einem Formular und den beiden Texteingabefeldern. Sobald eine gültige Kombination von Username und PW eingegeben wird, soll auf die zu bestimmente Seite verwiesen werden:
Also wenn zB der User "Fritz" sein richtiges PW "fussball" eingibt, soll er auf die Seite index_fritz.htm gelangen.
Falls der User "Peter" sein richtiges PW "auto" eingibt, soll er auf die Seite index_peter.htm gelangen.
Falls die Kombination von Username und PW nicht richtig ist (es gibt ja mit 8 Benutzern 8 mögliche Kombinationen) soll das Alertfenster erscheinen.
Die .htaccess-Lösung kann ich leider nicht anwenden, da ich auf einem NT-Server arbeite.
Danke für die Tipps. Bin ein wenig am Codes probieren, hab aber noch nichts brauchbares erreicht.
Tag Roberto.
Hallo, danke für deine rasche Antwort. Wie bereits im ersten Topic erwähnt, ist die Sicherheit in diesem Fall kein Thema; es ist mir bewusst, dass die hinterlegten PW's im JavaScript gelesen werden können.
Gut, wenn es dir nur um's Prinzip geht ...
Mir gehts mehr darum, einen möglichst realen Login darzustellen, also effektiv mit einem Formular und den beiden Texteingabefeldern. Sobald eine gültige Kombination von Username und PW eingegeben wird, soll auf die zu bestimmente Seite verwiesen werden:
Also wenn zB der User "Fritz" sein richtiges PW "fussball" eingibt, soll er auf die Seite index_fritz.htm gelangen.
Falls der User "Peter" sein richtiges PW "auto" eingibt, soll er auf die Seite index_peter.htm gelangen.
Eine Möglichkeit wäre eine eigene Passwortliste:
var Passwortliste = new Object();
Passwortliste.Fritz = "fussball";
Passwortliste.Peter = "auto";
function PW_Test(user,pwd) {
if(typeof Passwortliste[user] == 'string') {
if(Passwortliste[user] == pwd) {
window.location.href = 'index_'+user+'.html;
}
else alert(user+', du hast das falsche Passwort eingegeben.');
}
else alert ('Der Benutzer '+user+' existiert nicht.');
}
Aber wie gesagt, das taugt allenfalls als Spielerei.
Siechfred
Tag Roberto.
Hallo, danke für deine rasche Antwort. Wie bereits im ersten Topic erwähnt, ist die Sicherheit in diesem Fall kein Thema; es ist mir bewusst, dass die hinterlegten PW's im JavaScript gelesen werden können.
Gut, wenn es dir nur um's Prinzip geht ...
Mir gehts mehr darum, einen möglichst realen Login darzustellen, also effektiv mit einem Formular und den beiden Texteingabefeldern. Sobald eine gültige Kombination von Username und PW eingegeben wird, soll auf die zu bestimmente Seite verwiesen werden:
Also wenn zB der User "Fritz" sein richtiges PW "fussball" eingibt, soll er auf die Seite index_fritz.htm gelangen.
Falls der User "Peter" sein richtiges PW "auto" eingibt, soll er auf die Seite index_peter.htm gelangen.Eine Möglichkeit wäre eine eigene Passwortliste:
var Passwortliste = new Object();
Passwortliste.Fritz = "fussball";
Passwortliste.Peter = "auto";function PW_Test(user,pwd) {
if(typeof Passwortliste[user] == 'string') {
if(Passwortliste[user] == pwd) {
window.location.href = 'index_'+user+'.html;
}
else alert(user+', du hast das falsche Passwort eingegeben.');
}
else alert ('Der Benutzer '+user+' existiert nicht.');
}
>
> Aber wie gesagt, das taugt allenfalls als Spielerei.
>
> Siechfred
Danke, das könnte in etwa das sein, was ich mir vorstelle. Leider habe ich noch ein Problem mit dem Aufrufen dieser Funktion;
- Wenn ichs richtig herauslese, muss ich die Formularfelder mit "user" und "pwd" benennen. Wie muss ich das "onsubmit" im Formular auslösen, um die richtigen Daten weiterzugeben?
- In der Passwortliste werden die verschiedenen Passwörter des User festgehalten, richtig?
Ich möchte nicht einfach deinen Script Copy-Paste übernehmen, sondern auch etwas dabei lernen und bin daher froh, wenn ich auch die Funktion verstehe ;-)
Danke nochmals
Tag Roberto.
var Passwortliste = new Object();
Passwortliste.Fritz = "fussball";
Passwortliste.Peter = "auto";
In der Passwortliste werden die verschiedenen Passwörter des User festgehalten, richtig?
Ja. Der Name jedes Users ist eine Eigenschaft des Objektes "Passwortliste", als Wert wird ihr das Passwort zugewiesen.
function PW_Test(user,pwd) {
if(typeof Passwortliste[user] == 'string') {
if(Passwortliste[user] == pwd) {
window.location.href = 'index_'+user+'.html;
}
else alert(user+', du hast das falsche Passwort eingegeben.');
}
else alert ('Der Benutzer '+user+' existiert nicht.');
}
Wenn ichs richtig herauslese, muss ich die Formularfelder mit "user" und "pwd" benennen.
Nein, nicht ganz. "user" und "pwd" sind die Variablennamen, mit denen die Funktion intern weiterarbeitet. Wie die Formularfelder heißen, ist hier nicht relevant.
Wie muss ich das "onsubmit" im Formular auslösen, um die richtigen Daten weiterzugeben?
Eine mögliche Variante wäre sowas:
<form action="">
<p>
<input type="text" name="user" value=""><br>
<input type="text" name="pass" value=""><br>
<input type="submit" value="Testen" onclick="PW_Test(this.form.user.value, this.form.pass.value);return false;">
</p>
</form>
Siechfred
Danke, genau diese Lösung suchte ich ;-)
Gruss
Roberto