Support » Allgemeine Fragen » Seitenaufruf URL + Passwort

  • Gelöst werner4la

    (@werner4la)


    ich möchte aus einer Datenbankanwendung heraus eine Seite aufrufen, die passwortgeschützt ist.
    Ich finde nicht, wie das geht 🙁

    z.B. http://meineDomain.de/meineSeite/passwort

    Der Aufruf mit Passwort ist hier unkritisch, da nur berechtigte Benutzer der Datenbank an den Aufruf kommen und dieser nicht direkt eingetragen wird, sondern durch den Befehl OPEN URL der Anwendung (4D).

Ansicht von 8 Antworten - 1 bis 8 (von insgesamt 8)
  • Du kannst in WordPress Webseiten erstellen und den Inhalt der Webseite mit einem Passwort schützen. Wer den Link zur Webseite aufruft, sieht dann nur den Titel der Webseite und einen Hinweis, dass der Inhalt erst nach Eingabe eines Passworts angezeigt wird. Hilft dir das weiter?

    Thread-Ersteller werner4la

    (@werner4la)

    Ja, das ist klar und das mache ich auch so.

    Meine Frage bezieht sich jedoch darauf, dass ich eine (passwortgeschützte) Seite meiner Website aus einer Datenbankanwendung heraus aufrufe und der URL das Passwort mitgeben will. Das wäre identisch damit, dass jemand im Browser direkt hinter der URL mit einem Attribut das Passwort angeben würde.

    Also nochmal wie oben http://meineSite.de/seiteXX/{password=12345}

    Geht das überhaupt und wenn ja wie?

    Passwörter als GET-Requests in die URL zu setzen ist eine unsichere Methode. (Dieser Beitrag führt eine Reihe Gründe auf: https://security.stackexchange.com/a/147193). Der WordPress-Core enthält (wahrscheinlich deshalb) auch keine Möglichkeit, das Passwort für einen geschützte/n Seite/Beitrag mit einem GET-Request einzugeben. Ich habe auf die Schnelle auch kein Plugin gefunden, dass diese unsichere Methode unterstützen würde.

    Du kannst ein Child-Theme mit einem zusätzlichen Template anlegen, in dem du den Inhalt über ein if-Statement nur dann ausgibst, wenn ein enstprechender GET-Request vorliegt: Ein Template page-geheim.php im Child-Theme wird automatisch einer Seite mit Titel „Geheim“ zugewiesen. Der Code könnte sinngemäß so aussehen:

    <?php 
    get_header();
    if( isset($_GET['password'] && "b8cf65c0" == $password ) {
      // Loop
    } else {
      echo 'Diese Seite ist geschützt.';
    }
    get_footer();

    (Damit das besser zum restlichen Erscheinungsbild des Themes passt, solltest du die page.php des Themes als page-geheim.de kopieren und dann entsprechend anpassen.)

    Denk aber daran, dass Security through Obscurity ein schlechtes Sicherheitskonzept ist. Wer das Passwort kennt (z.B. durch Auslesen des GET-Parameters in der URL oder aber durch einen Brute-Force-Angriff), kennt auch den Seiteninhalt. Du musst außerdem dafür sorgen, dass der Inhalt nicht z.B. über die REST-API oder einen Feed ausgelesen werden kann.

    Eine weitere (nicht weniger unsichere) Methode wäre, eine Seite mit einem zufallsgeneriertem Titel/Slug zu erstellen, die in keinem Menü vorkommt und aus der anderen Anwendung darauf zu verlinken. Auch hier ist wieder wichtig, die Seite aus den Suchergebnissen auszuklammern und nicht in Feed oder REST API erscheinen zu lassen.

    Denk aber daran, dass Security through Obscurity ein schlechtes Sicherheitskonzept ist.

    Ist ein oft wiederholtes Dogma, das sich schon überholt hat!
    Es is besser als nix – und in Zeiten, wo Robots Seiten angreifen und auf gewisse Parameter im HTML-Source anspringen, ist security by obscurity ein probates Mittel! 🙂

    Es is besser als nix …

    Sonst hätte ich diesen Vorschlag auch nicht gemacht.

    Ich möchte lieber vermitteln, wie es richtig geht, als fragwürdige Workarounds anzubieten, deren Sicherheitsrisiken Fragenstellende vielleicht gar nicht absehen. Deshalb hielt ich zumindest den Hinweis auf die fragwürdige Sicherheit für angebracht.

    Ich möchte lieber vermitteln, wie es richtig geht

    Und security by obscurity ist mittlerweile einer von vielen RICHTIGEN WEGEN.
    Deswegen sagte ich ja: Es is ein Dogma aus Urzeiten des Webs, welches sich überholt hat.

    An security by obscurity ist mittlerweile nix mehr fragwürdig!

    Thread-Ersteller werner4la

    (@werner4la)

    OK, danke für die ausführlichen Antworten. Möglicherweise muss ich auch das grundsätzliche Ansinnen nochmal überdenken.

    Dank ändere ich den Status des Thread auf „gelöst“ und du meldest dich bitte, wenn dir noch etwas einfällt.

Ansicht von 8 Antworten - 1 bis 8 (von insgesamt 8)