Passwortabfrage von Dominik Pütz - Basis-Version


Hallo!

Ich habe mich bemüht, das Script übersichtlich und einfach zu halten, und diese Erklärung so ausführlich wie möglich zu machen, damit möglichst jeder in der Lage ist, meine Passwortabfrage zu benutzen.

Nun folgt eine kurze Erklärung der einzelnen Dateien, die Sie ja bereits heruntergeladen haben.
Grundsätzlich sind alle Stellen, an denen Sie Änderungen vornehmen müssen/können, durch Kommentare markiert. Änderungen an anderer Stelle sollten Sie nur vornehmen, wenn Sie genau wissen was Sie tun!
Diese Dateien müssen sich alle im selben Verzeichnis befinden. Den Rest Ihres geschützten Bereiches können Sie auch in Unterordnern unterbringen.

Einbauanleitung.html
   
Diese Datei, die Sie gerade lesen! Bitte nicht Online stellen, denn da hat sie keinen Sinn!

login.html
   
Erzeugt ein Frame für login2.html!
In dieser Datei müssen Sie lediglich den Fenstertitel ändern.
Sie können auch ein direktes Login erzeugen. Wenn Sie an den Dateinamen (login.html) ein ? und das Login anhängen (login.html?gast), dann erscheint das Login schon in dem Eingabefeld und muß nicht mehr getippt werden. Wenn Sie dahinter noch ein % und das Kennwort (login.html?gast%test) schreiben, dann wird direkt die Überprüfung gestartet. Einfach mal ausprobieren! Letzteres ist natürlich ein Sicherheitsrisiko, da der Link incl. Kennwort in den Favoriten gespeichert werden kann.
Arbeiten Sie mit eigenen Frames, dann ist diese Datei lediglich notwendig, wenn ein Autologin-Link erzeugt werden soll.
Möchten Sie die Möglichkeit des Autologins unterbinden, dann löschen Sie einfach den Scriptteil aus dieser Datei.

login2.html
   
Hier werden Login und Passwort eingegeben. Sie können entweder die gesamte Datei verwenden und an Ihre Homepage anpassen oder Sie kopieren die gekennzeichneten Bereiche (HEAD-Bereich und BODY-Bereich) heraus und fügen die in eine andere Seite ein. Den BODY-Bereich können Sie z.B. auch komplett in eine Tabellenzelle einfügen.
Diese Datei muß in einem Frame angezeigt werden, sonst wird login.html gestartet.
In Dieser Datei müssen Sie ein paar Anpassungen vornehmen (Textformatierungen)!

frames.html
   
Öffnet ein unsichtbares Frame, damit ein Auslesen des Quellcodes erschwert wird und auf den folgenden Seiten überprüft werden kann, ob sich diese innerhalb dieses Frames befinden (verhindert den direkten Aufruf einer Unterseite durch Eingabe der URL in der Browseradresszeile). Außerdem werden hier Login und Kennwort gespeichert, damit auch alle weiteren Seiten in der Lage sind, diese auszulesen.
In dieser Datei müssen Sie keine Änderungen vornehmen.

pruefen.html
   
Übernimmt die Überprüfung von Login und Kennwort.
Auch diese Seite sollten Sie an Ihr Layout anpassen, wenngleich sie in Zeiten von DSL nur Sekundenbruchteile sichtbar sein wird!

fehler.html
   
Bei fehlerhaftem Login und/oder Kennwort wird diese Seite aufgerufen.
Auch wenn an Sie gar keine Info geht, sollten Sie den Text ruhig so lassen. Das schreckt ab!
Layoutmäßig müssen Sie die Seite allerdings anpassen und ggf. wollen Sie ja auch einen Link zu Ihrer Kontaktseite oder Ihre Emailadresse hinzufügen.

index.html
   
Wenn jemand versucht eine Unterseite direkt (außerhalb der Frames) oder mit ausgeschaltetem JavaScript aufzurufen, dann erscheint diese Seite.
Es macht Sinn, dass diese Seite index.html heißt, denn dann wird sie ebenfalls aufgerufen, wenn jemand einen Ordner des Servers als URL eingibt. Sie sollte also auch in sämtliche Unterordner kopiert werden, sofern Sie Unterordner verwenden.
Wenn Sie einen Unterordner ohne index.html verwenden, dann kann der Inhalt dieses Ordners durch Eingabe der Ordner-URL angezeigt werden. Das Widerspricht natürlich dem Sinn eines geschützten Bereiches! Achten Sie also unbedingt darauf, dass jeder Ordner (auch reine Bild- oder Dateienordner) eine index.html enthält!
Auch diese Seite sollten Sie im Layout an Ihre Seite anpassen.

NNMaus.html
   
Ist notwendig, um auch in Nestcape und Firefox die rechte Maustaste zu unterbinden.
Im Login und während der Überprüfung ist diese gesperrt!

timeout.html
   
Ist für MSIE und Firefox in den aktuellen Versionen uninteressant. Sollte jemand einen wesentlich älteren Browser verwenden oder einen anderen Browser, der Probleme mit JavaScript hat, dann kann es passieren, das ein Einloggen unmöglich ist.
Diese Datei ist lediglich als Sicherheit gedacht und sollte in der Regel unnötig sein.
Die Zeit wurde auf 3 Minuten gesetzt und kann in pruefen.html von Ihnen geändert werden.
Auch diese Seite sollten Sie im Layout an Ihre Seite anpassen.

eingang.html
   
Diese Datei ist als Beispiel zu verstehen, wie die sämtliche HTML-Dateien (wirklich alle ohne Ausnahme) des geschützten Bereiches aussehen müssen. Bitte laden Sie die Datei nur zu Testzwecken hoch und verwenden Sie später unbedingt eine Datei mit einem selbst vergebenen Namen.
Der HEAD-Bereich jeder folgenden HTML-Datei sollte so aussehen wie in dieser Datei! Wenn Sie mit Unterordnern arbeiten, dann achten Sie darauf die URL für den Aufruf von Head.js und ggf. auch index.html (sollte die nicht in jedem Ordner liegen) anzupassen.
Der HEAD-Bereich überprüft, ob JacaScript aktiviert ist (wenn nicht, dann ist ja auch kein Login möglich und der Aufruf somit unerlaubt) und ob sich die Datei innerhalb des von frames.html erstellten Frames befindet.
Die Zieldatei wird von der jeweiligen User-Datei (in diesem beispiel gast$test.js) aufgerufen.

blind.gif
   
Hat lediglich Dummy-Funktion. Ein 1-Pixel-großes zweifarbiges unsichtbares Bild (42 Bytes groß).
Wird von login.html und frames.html als imaginäres Frame aufgerufen.
Können Sie z.B. auch an anderer Stelle sehr gut verwenden, um z.B. in Tabellen eine Mindestbreite zu erzwingen.

login.js
   
Wird von login2.html aufgerufen. Erzeugt die Felder zur Login- und Passworteingabe (damit die bei deaktiviertem Javascript unsichtbar sind) und leitet die Daten an frames.html weiter.
Wenn Sie das Kennwortfeld nicht als Pflichtfeld haben möchten, dann können Sie das hierin ändern. Ansonsten sollten Sie diese Datei nicht verändern.

pruefen.js
   
Wird von pruefen.html aufgerufen. Sucht im gleichen Ordner wie frames.html nach einer Datei mit dem Namen login$kennwort.js und startet diese. Wenn die Datei nicht existiert, wird abbruch.js gestartet!
Diese Datei muß nur verändert werden, wenn Sie die erweiterte Version verwenden möchten, oder wenn Sie die Userdateien in einem Unterordner unterbringen (bei vielen Usern ist das übersichtlicher). Denken Sie dann aber unbedingt daran, auch in der Userdatei den Pfad anzupassen und eine Index.html in diesen Ordner zu legen.

abbruch.js
   
Öffnet die Datei fehler.html.
Bitte diese Datei nicht verändern.

gast$test.js
   
Beispieldatei für Login und Kennwort. wenn diese Datei auf dem Server liegt, dann kann man sich mit dem Login gast und dem Kennwort test einloggen.
Diese Datei müssen Sie für jeden User neu erstellen (einfach kopieren und die Kopie umbenennen). Der Name der Datei muß dann so geändert werden, daß zuerst das Login kommt, dann ein Dollar-Zeichen und dann das Kennwort. Die Endung muß immmer .js lauten. Beachten Sie die Groß- und Kleinschreibung, denn manche Server unterscheiden das.
In der Datei müssen Sie auf jeden Fall eine Zieldatei (die erste Seite Ihres geschützten Bereiches) angeben. Als Beispiel ist hier die Datei eingang.html verwendet. Das sollten Sie unbedingt ändern! Ggf. müssen Sie auch den Pfad anpassen.
Sie können auch für jeden User eine andere Zieldatei angeben. Sinnvoll ist das z.B., wenn nicht alle User die gleichen Inhalte sehen dürfen, oder wenn Sie einzelnen Usern die Zugriffsrechte wieder entziehen wollen. Dann sollten Sie allerdings im Kommentarfeld der Datei den richtigen Namen eingeben, damit Sie die Datei über die Suchen-Funktion von Windows wiederfinden (nach enthaltenem Text suchen). Wenn Sie einem User den Zugang entziehen wollen, dann löschen Sie einfach die entsprechende Datei.

Head.js
   
Dieses Script wird vom HEAD-Bereich jeder Datei aufgerufen (in diesem Beispiel von eingang.html) und übernimmt die JavaScript-Abfrage, ob ein Login erfolgt ist.
Der Vorteil davon, daß es sich um eine separate Datei handelt und das Script nicht direkt im HEAD-Bereich steht, ist der, daß Sie den JavaScript-Teil so auch später noch ohne Probleme anpassen können und nicht in jeder Unterseite einzeln ändern müssen!
Von dieser Datei wird z.B. bei fehlenden Frames index.html aufgerufen. Sollte sich bei der Verwendung von Unterordnern nicht in jedem Ordner die o.g. index.html in Kopie befinden, dann sollten Sie einen absoluten Pfad (http://www......../Head.js) angeben. Es wird immer in dem Ordner gesucht, in dem die HTML-Datei liegt und nicht in dem, in dem die Scriptdatei ist, auch wenn der Dateiaufruf aus der Scriptdatei heraus erfolgt.

Wenn Sie z.B. innerhalb Ihres gesamten geschützten Bereiches die rechte Maustaste sperren möchten, dann können Sie das durch Einbinden des folgenden Scriptes in diese Datei erreichen:
document.onmousedown=ueberwachung;
document.onkeydown=ueberwachung;
function ueberwachung(ereignis)
 {
  if(navigator.userAgent.indexOf("Gecko")+1)
   {
    if(ereignis.which==93)
     {
      alert('Das Kontextmenü wurde gesperrt!');
      return false;
     }
    else if(ereignis.which==3)
     {
      top.location.href="NNMaus.html";      /* ggf. einen absoluten Pfad verwenden (http://www...../NNMaus.html) damit auch */
      return false;                                  /* bei der Verwendung von Unterordnern immer die richtige Datei gefunden wird. */
     }
   }
  else
   {
    if(event.button==2)
     {
      alert('Die rechte Maustaste wurde gesperrt!');
      return false;
     }
    else if(window.event.keyCode==93)
     {
      alert('Das Kontextmenü wurde gesperrt!');
      return false;
     }
   }
  return true;
 }

Die Variabeln login und kennwort werden mit den jeweiligen Daten belegt. Mit dem folgenden Aufruf können Sie z.B. eine persönliche Begrüßung erzeugen:
<script type="text/javascript"><!--
 document.write('Hallo '+login+'!');
//--></script>

Es wäre nett, wenn Sie meine Arbeit dahingehend entlohnen, daß Sie an irgendeiner Stelle Ihrer Seite einen Link zu meiner Seite (http://www.dominikpuetz.de) setzen. Das kann ein Textlink sein oder alternativ auch mein Banner:

15,3 KByte
Möchten Sie meinen Banner auf Ihrer Homepage einbinden? Kein Problem! Verwenden Sie einfach den folgenden Quelltext:
<!-- Start dominikpuetz.de -->
<a href="http://www.dominikpuetz.de" target=_blank><img src="http://www.dominikpuetz.de/banner.gif" border=0 height=60 width=468 alt="dominikpuetz.de - n&uuml;tzliche Javascripte"></a>
<!-- Ende dominikpuetz.de -->


Wenn Sie Probleme beim Einbau haben, oder Hilfe bei der Verwirklichung irgendwelcher Extras benötigen, dann werde ich versuchen, Ihnen zu helfen. Allerdings setze ich dafür voraus, daß Sie einen Link zu meiner Seite eingebaut haben.
Nutzen Sie bitte mein Support-Formular!
Ich freue mich natürlich auch jederzeit über Feedback in Form von Anregungen, Kritik, Wünschen, ...

Viel Erfolg mit meinem Script, und daß es uns gelingt das Internet ein wenig sicherer zu machen!!!

Gruß,
Dominik Pütz