Bastian Kurz: PHP und .htpasswd

Hallo.

Ich brauche einen Passwortschutz für einen bestimmten Bereich meiner Website und überlege, wie ich das machen kann.

Ich habe einen Schutz mit .htaccess und .htpasswd. Jetzt würde ich gerne mit PHP neue User der .htpasswd hinzufügen.
Jetzt frage ich mich allerdings, ob das sinnvoll ist und ob es vielleicht ein Sicherheitsrisiko darstellt.
Ist es möglich, die .htpasswd mit PHP zu schreiben? Geht das von den Rechten her? Der Server ist ja nun mal standardmäßig so konfiguriert, daß Dateien, die mit .ht beginnen, nicht einfach herausgegeben werden.
Kann man dann mit PHP darauf Zugriff nehmen und Zeilen hinzufügen oder löschen?
Ich habe versucht, mir Gedanken darüber zu machen, ob es gefährlich bzw. fahrlässig ist. Ich weiß es aber nicht.
Versuche ich hier vielleicht es ganz Gruseliges anzustellen?

Kann mir dazu bitte mal jemand ein paar Hinweise geben? Danke.

Schöner Gruß,
Basti

  1. Hallo Freunde des gehobenen Forumsgenusses,

    Ich habe einen Schutz mit .htaccess und .htpasswd. Jetzt würde ich gerne mit PHP neue User der .htpasswd hinzufügen.

    Das geht. Diese Dateien sind ganz normale Text-Dateien.

    Jetzt frage ich mich allerdings, ob das sinnvoll ist und ob es vielleicht ein Sicherheitsrisiko darstellt.

    Im Prinzip stellt das kein Sicherheitsrisiko dar, wenn du es so implementierst,
    dass unautorisierte Benutzer Schreibzugriff auf die Dateien erhalten schon.

    Ist es möglich, die .htpasswd mit PHP zu schreiben? Geht das von den Rechten her? Der Server ist ja nun mal standardmäßig so konfiguriert, daß Dateien, die mit .ht beginnen, nicht einfach herausgegeben werden.

    Das gilt nicht für die Dateisystem-Ebene, da hat diese Einstellung des Apachen keine Relevanz.

    Gruß
    Alexander Brock

    --
    A
    1. hallo,

      Das geht.

      Ja, das tut es - aber um es genauer zu beantworten, wäre ein entsprechender Verweis ins Handbuch oder auch zu einem der zahlreichen archivierten Threads hilfreich gewesen.

      Diese Dateien sind ganz normale Text-Dateien.

      "diese Dateien"? Welche?

      Im Prinzip stellt das kein Sicherheitsrisiko dar, wenn du es so implementierst,
      dass unautorisierte Benutzer Schreibzugriff auf die Dateien erhalten schon.

      Im "gehobenen Forumsgenuß" stelle ich fest, daß du aufgrund der nur durch Kommata getrennten logischen Teile dieses Satzes einen interessanten Lapsus produziert hast. Es ergeben sich nämlich zwei unterschiedliche und in ihrer Unterschiedlichkeit auch von der Aussage her völlig gegesätzliche Darstellungen:
      1. Im Prinzip stellt das kein Sicherheitsrisiko dar
      2. wenn du es so implementierst, dass unautorisierte Benutzer Schreibzugriff auf die Dateien erhalten
      Punkt 1 ist sicher korrekt
      Punkt 2 ist wahrscheinlich ebenfalls korrekt, sagt aber das Gegenteil aus - _dann_ ist es nämlich ein Sicherheitsrisiko.
      Die Conclusio, die du setzt, kann dann einfach nicht mehr korrekt sein.

      Ist es möglich, die .htpasswd mit PHP zu schreiben? Geht das von den Rechten her? Der Server ist ja nun mal standardmäßig so konfiguriert, daß Dateien, die mit .ht beginnen, nicht einfach herausgegeben werden.
      Das gilt nicht für die Dateisystem-Ebene, da hat diese Einstellung des Apachen keine Relevanz.

      Das bedarf einer genaueren Darstellung. Was meinst du hier mit "Dateisystem-Ebene"?

      Grüße aus Berlin

      Christoph S.

      --
      Visitenkarte
      ss:| zu:) ls:& fo:) va:) sh:| rl:|
      1. Hallo Freunde des gehobenen Forumsgenusses,

        "diese Dateien"? Welche?

        Die, von denen er gesprochen hat. .htaccess und .htpasswd.

        Im Prinzip stellt das kein Sicherheitsrisiko dar, wenn du es so implementierst,
        dass unautorisierte Benutzer Schreibzugriff auf die Dateien erhalten schon.

        Im "gehobenen Forumsgenuß" stelle ich fest, daß du aufgrund der nur durch Kommata getrennten logischen Teile dieses Satzes einen interessanten Lapsus produziert hast. Es ergeben sich nämlich zwei unterschiedliche und in ihrer Unterschiedlichkeit auch von der Aussage her völlig gegesätzliche Darstellungen:

        1. Im Prinzip stellt das kein Sicherheitsrisiko dar
        2. wenn du es so implementierst, dass unautorisierte Benutzer Schreibzugriff auf die Dateien erhalten
          Punkt 1 ist sicher korrekt
          Punkt 2 ist wahrscheinlich ebenfalls korrekt, sagt aber das Gegenteil aus - _dann_ ist es nämlich ein Sicherheitsrisiko.

        Diese ****** Rechtschreibreform mit ihren ******* Kommata-Regeln und überhaupt diese **** ****** Kommata finde ich absolut nervig, weil genau solche Fehler entstehen.

        Das bedarf einer genaueren Darstellung. Was meinst du hier mit "Dateisystem-Ebene"?

        Der Apache rückt Dateien die mit .ht beginnen nicht über HTTP heraus.
        Jedenfalls nicht in der Voreinstellung. PHP kann aber mit den gängigen
        Dateifunktionen (fopen, file, fread, fwrite, fclose etc.) auf diese
        Dateien zugreifen, wenn die Dateirechte entsprechend gesetzt sind.

        Gruß
        Alexander Brock

        --
        A
        1. Hallo,

          Diese ****** Rechtschreibreform mit ihren ******* Kommata-Regeln und überhaupt diese **** ****** Kommata finde ich absolut nervig, weil genau solche Fehler entstehen.

          nein, hier verdammst du die Rechtschreibreform ausnahmsweise mal zu Unrecht. Solche Missverständnisse durch ungünstig formulierte und strukturierte Sätze gab es schon immer und wird es immer geben.
          Übrigens hat sich im Hinblick auf die Zeichensetzung mit der Rechtschreibreform gar nicht so viel geändert wie immer behauptet wird. Im wesentlichen sind ein paar strenge Kommaregeln entschärft worden und lauten nun sinngemäß auf "kann man, muss man aber nicht". Es liegt also mehr als vorher im Ermessen des Schreibers, an bestimmten Stellen ein Komma zu setzen oder auch nicht.

          Ein Grund mehr, lange Sätze mit mehreren durch Kommata getrennten Abschnitten in mehrere Sätze aufzuteilen; ich persönlich setze auch gern mal ein Semikolon. Das trennt nicht ganz so hart wie ein Punkt, aber es gibt dem Satz eine klare Gliederung, so wie es verschiedene Klammern in mathematischen Termen tun.

          Gute Nacht allerseits,

          Martin

          --
          Ungeschehene Ereignisse können einen katastrophalen Mangel an Folgen nach sich ziehen.
            (Unbekannter Politiker)