WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   JavaScript Passwortschutz (http://www.wcm.at/forum/showthread.php?t=46688)

bond 17.02.2002 13:00

JavaScript Passwortschutz
 
Hallo!

Ich habe wegen folgendem javascriptpasswortschutz 2 fragen:

1) Wie kann ich es machen, daß man, nachdem man das Passwort eingetippt hat, mit der Eingabetaste den login Knopf betätigen kann (also ohne maus)?

2) Wie kann ich es machen, daß sich die geschützte Seite in einem neuen Browserfenster öffnet?


Hier ist der Code:

<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Administrations Log-In</title>
</head>

<body>

<center><form name=login>
<table border=0 cellpadding=3 style="border-collapse: collapse" bordercolor="#111111" cellspacing="0" width="549" height="307">

<tr><td colspan=3 align=center width="543" height="193">
<p style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align="center">
<font face="Times New Roman" size="6">ADMINISTRATIONS-</font>
</p>
<p style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align="center">
<font face="Times New Roman" size="6">BEREICH</font>
</p>
<p style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align="center"></p>
<p style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align="center"></p>
<p style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align="center">
<font face="Times New Roman">Der folgende Bereich kann nur mit
Administratorrechten betreten werden!</font></p>
<p style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align="center">
<font face="Times New Roman">Bitte geben Sie Ihre Zugangskennung
ein:</font></p>
</td></tr>
<tr><td width="150" height="23"></td><td width="84" height="23">
<font face="Times New Roman">Username:</font></td>
<td width="297" height="23"><select name=memlist>
<option value='Systemadmin|71343|HWALTNDW'>Systemadmin
</select></td></tr>
<tr><td width="150" height="23"></td><td width="84" height="23">
<font face="Times New Roman">Passwort:</font></td>
<td width="297" height="23"><input type=password size=13 maxlength=15 name=pass></td></tr>
<tr><td colspan=3 align=center width="543" height="44"><input type=button value="Login" onclick="check(this.form)"></td>
</tr>
</table>
</form>
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var params=new Array(4);
var alpha="ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI";
function check(form) {
which=form.memlist.selectedIndex;
choice = form.memlist.options[which].value+"|";
if (choice=="x|") {
alert("Bitte wählen Sie Ihren Usernamen!");
return;
}
p=0;
for (i=0;i<3;i++) {
a=choice.indexOf("|",p);
params[i]=choice.substring(a,p);
p=a+1;
}
h1=makehash(form.pass.value,3);
h2=makehash(form.pass.value,10)+" ";
if (h1!=params[1]) {
alert("Falsches Passwort!"); return; };
var page="";
for (var i=0;i<8;i++) {
letter=params[2].substring(i,i+1)
ul=letter.toUpperCase();
a=alpha.indexOf(ul,0);
a-=(h2.substring(i,i+1)*1);
if (a<0) a+=26;
page+=alpha.substring(a,a+1); };
top.location=page.toLowerCase()+".htm";
}
function makehash(pw,mult) {
pass=pw.toUpperCase();
hash=0;
for (i=0;i<8;i++) {
letter=pass.substring(i,i+1);
c=alpha.indexOf(letter,0)+1;
hash=hash*mult+c;
}
return(hash);
}
// End -->
</script>
</center>

</html>

bond 20.02.2002 11:05

kann mir denn niemand helfen? :heul:

kingchaos01 20.02.2002 14:06

eine frage:
 
wie soll denn das ganze funktionieren, falls javascript abgeschaltet ist?

muss der link nicht irgendwo im klartext drinstehn?

wie sicher ist sowas?

fragt sich
Roland

bond 20.02.2002 14:36

Zitat:

wie soll denn das ganze funktionieren, falls javascript abgeschaltet ist?
gute frage, ich bin auch kein profi, vielleicht hat ja wer eine lösung für dieses problem!

Zitat:

muss der link nicht irgendwo im klartext drinstehn?
naja dann wärs ja sehr einfach zu knacken. Das Passwort und der Ziellink sind in der Zeile

Zitat:

<option value='Systemadmin|71343|HWALTNDW'>Systemadmin
codiert. frag mich aber nicht wie

Zitat:

wie sicher ist sowas?
prinzipiell ist ein javascriptpasswortschutz nicht sicher. es soll aber auch mehr eine spielerei sein!

Falls es jemanden interessiert diesen Passwortschutz gibts auf:
http://www.roflweb.de/Script/Passwor...wortsystem.htm

Honk 20.02.2002 18:25

hallo
schau mal auf meine seite http://land.heim.at/podersdorf/220668/index2.htm
ich hab mir sowas für den "members only bereich" gebastelt.
soll das so ausschauen?
wenn ja schick ich dir am abend das script dazu (aber nicht vor 22:00 Uhr)
honk

RaistlinMajere 20.02.2002 19:19

@bond: js nicht sicher!!
 
ohne mir jetzt den quelltext genau durchgesehen zu haben, glaube ich doch behaupten zu können, daß ein paßwortschutz alleinig auf js aufgebaut definitiv NICHT sicher ist (hab sowas auch schon in diversen programmierbüchern gesehen, wo aber immer der hinweis dortstand, den ich nun auch gebe).
da es sich bei js um eine clientseitige programmiersprache handelt, wird der quelltext immer im browser einsehbar sein (nein, man kann sich auch davor nicht mit maustastensperren usw. schützen, wer weiß, wie, kommt trotzdem an die informationen ran, die er haben will, ist gar nicht so schwer) und jemand, der dein script verstanden hat, wird sich auch das paßwort herausholen können.
wirklichen schutz bietet nur clientseitige programmierung z.b. mit php oder asp, wo die files am server liegen und auch dort verarbeitet werden, das ergebnis davon wird im browser angezeigt, nicht der eigentliche quelltext der scripts, damit ist sowas ein kinderspiel von ein paar zeilen.
was du allerdings probieren könntest (weiß jetzt aber nicht, ob das mit js geht), ist, dein paßwort in eine externe datei zu verlagern und so auszulesen, denn das steht ja dann nicht in deinem quelltext drin und kann somit auch nicht über den browser betrachtet werden.

mike76 20.02.2002 20:41

Hallo,

eine viel einfachere Lösung wäre doch, den Filenamen der aufzurufenden Seite als Passwort zu verwenden.

Wenn Du also zB. nach dem Login-Screen die Seite "ersteseite.html" aufrufen willst, wäre dein einzugebendes passwort "ersteseite".

und mit javascript verlinkst du dann auf

> document.location.href = document.formular.eingabefeld.value + ".html";

Alles klar?

Gruss,
Michael

RaistlinMajere 20.02.2002 20:56

funktioniert sicher, nur hats den unschönen effekt, daß eine falsche eingabe einen nicht aufrufbare seite hervorruft, was unprofessionell wirkt.

valo 20.02.2002 21:34

aber das könnte man ja abfangen am server....

ich sag nur .htaccess, damit gehts wirklich gut, muss nur der server unterstützen...

@bond
is a schöne spielerei,aber nix dahinter... ;)

RaistlinMajere 20.02.2002 21:50

@valo
 
erklär das mal bitte genauer, was genau ist .htaccess?

valo 20.02.2002 21:58

is a serverseitiges file, in dem du bereiche, gruppen und mitglieder definiern kannst, die auf das verzeichnis, in dem die .htaccess leigt zugreiffen können, das geht sehr gut... i habs aber noch nie speziell angewendet ausser mal testweise auf meinem webspace

weitere informationen:

http://he.net/~jdoe/info/htaccess/demo.html das is eine demo wie das funkionierend ausschaut (eine funktionsdemo:D)
http://www.javascriptkit.com/howto/htaccess.shtml
http://home.golden.net/htaccess.html
http://hoohoo.ncsa.uiuc.edu/docs/tutorials/user.html
http://technotrade.com/htaccess/
http://faq.clever.net/htaccess.htm
http://apache-server.com/tutorials/A...-htaccess.html
http://www.trash.net/faq/htaccess.shtml
http://www.google.at/search?q=htaccess&hl=de&lr= :D

snowman 20.02.2002 22:07

aussderm kannst du darin fehlerabfangseiten für server-fehler (404 und ähnliches) einrichten.
du kannst dateitypen direkt zum download freigeben (nützlich zb bei word oder excel files).
du kannst zB dort einstellen, dass auch ssi über normale html-dateiendungen ausgeführt werden können und nicht nur über shtml.

uswusf.

gruss,
snowman

valo 20.02.2002 22:14

Zitat:

Original geschrieben von snowman
aussderm kannst du darin fehlerabfangseiten für server-fehler (404 und ähnliches) einrichten.
du kannst dateitypen direkt zum download freigeben (nützlich zb bei word oder excel files).
du kannst zB dort einstellen, dass auch ssi über normale html-dateiendungen ausgeführt werden können und nicht nur über shtml.

uswusf.

gruss,
snowman

es steht wohl nicht umsonst auf einer der seiten die ich aufgelistet hab folgender text gaaaaaaanz am anfang :D

Zitat:

.htaccess files are very versitile, and can easily become very complex.

Honk 20.02.2002 23:33

ähh, nur so eingewendet: .htaccess wird aber nicht von allen servern unterstützt. grad bei den gratis webspace angeboten funkt das überhaupt nicht (oder nur sehr selten!)
... zmindest ist das meine erfahrung (wollte ich nämlich ursprünglich auch verwenden)
honk :(

snowman 20.02.2002 23:58

Zitat:

Original geschrieben von Honk
ähh, nur so eingewendet: .htaccess wird aber nicht von allen servern unterstützt.
vor allem von keinen mit iis. ;-)

gruss,
snowman

snowman 21.02.2002 00:00

und was mir auch gerade noch eingefallen ist:

mit htaccess kannst du auch serverseitige redirects machen.

gruss,
snowman

bond 23.02.2002 10:23

vielen dank für die vielen postings

wie gesagt dieser javascript passwortschutz ist eigentlich nur eine spielerei und soll auch nicht mehr sein!

mir ist es eigentlich nur darum gegangen wie ich ich es machen kann, daß sich die geschützte Seite in einem neuen Browserfenster öffnet und wie ich es machen kann, daß man, nachdem man das Passwort eingetippt hat, mit der Eingabetaste den login Knopf betätigen kann (also ohne maus).


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:29 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag