Ergebnis 1 bis 9 von 9

Thema: HTTP Basic Auth mag nicht mit Contao 4.3

  1. #1
    Contao-Nutzer Avatar von buzzjoe
    Registriert seit
    03.03.2012.
    Ort
    Leipzig
    Beiträge
    25

    Standard HTTP Basic Auth mag nicht mit Contao 4.3

    Hallo zusammen,

    ich habe zum ersten Mal ein Contao 4 für ein Kundenprojekt aufgesetzt, weil sich abzeichnet, dass bald eine LTS-Version erscheinen wird.

    Unsere interne Vorgehensweise ist meistens die, dass wir ein neues Projekt per Basic-Auth abschotten und diesen Schutz erst dann aufheben, wenn alles fertig und vom Kunden abgenommen ist.
    Bisher konnten wir dafür immer in der .htaccess-Datei die üblichen Zeilen eintragen und beim Aufrufen der Seite mussten Username und Passwort eingegeben werden.

    Leider produziert das in Contao 4 einen Error 500:

    Code:
    AuthType Basic
    AuthName "Access to /dev"
    AuthUserFile /path/to/.htpasswd
    Require user gast
    Gehostet wird bei 1&1.

    Hat jemand von euch eine Idee, was das Problem ist?

    Michael

  2. #2
    Contao-Nutzer Avatar von sebi
    Registriert seit
    17.03.2012.
    Ort
    Kiel
    Beiträge
    154

    Standard

    nAbend.

    das gleiche Problem habe ich gerade auch gefunden.
    Meine .htaccess Anpassungen sehen allerdings etwas anders aus, aber auch in deiner kurzen Konfiguration taucht der 500er Fehler auf.

    Hänge mich daher mal hier an und bin gespannt.

    [EDIT:]
    PS: Ich habe nun den Teil für den Zugangsschutz aus der app_dev.php einfach in meine app.php kopiert und so kann ich einen Zugangsschutz realisieren. Muss man natürlich vorm Launch wieder rausnehmen, aber das wäre bei der .htaccess ja nicht anders.

    Sebi
    Geändert von sebi (17.02.2017 um 23:54 Uhr)

  3. #3
    Contao-Nutzer Avatar von buzzjoe
    Registriert seit
    03.03.2012.
    Ort
    Leipzig
    Beiträge
    25

    Standard

    app_dev.php klingt gut. Aber bei meinem Contao-Bundle war die nicht dabei. Was habe ich falsch gemacht?

  4. #4
    Contao-Nutzer Avatar von sebi
    Registriert seit
    17.03.2012.
    Ort
    Kiel
    Beiträge
    154

    Standard

    Das kann ich dir auch nicht sagen ;-)

    Hier auf jeden Fall der Teil, den ich kopiert habe:

    PHP-Code:
    // Access to debug front controllers is only allowed on localhost or with username and password.
    // The username and password need to be separated by a colon and then converted to a SHA512 hash.
    //
    // Example: username:password
    // SHA512:  9a83c7ec28250be89cef48d7698d68f4cd6e368e29c1339...6010ef50ed7d869de3cf0ccc65aa600e980818
    //
    // You can e.g. use http://www.hashgenerator.de to generate the SHA512 hash online.
    $accessKey '';

    if (isset(
    $_SERVER['HTTP_CLIENT_IP'])
        || isset(
    $_SERVER['HTTP_X_FORWARDED_FOR'])
        || !(
    in_array(@$_SERVER['REMOTE_ADDR'], ['127.0.0.1''fe80::1''::1']) || php_sapi_name() === 'cli-server')
    ) {
        if (
    '' === $accessKey) {
            
    header('HTTP/1.0 403 Forbidden');
            die(
    sprintf('You are not allowed to access this file. Check %s for more information.'basename(__FILE__)));
        }

        if (!isset(
    $_SERVER['PHP_AUTH_USER'])
            || !isset(
    $_SERVER['PHP_AUTH_PW'])
            || 
    hash('sha512'$_SERVER['PHP_AUTH_USER'].':'.$_SERVER['PHP_AUTH_PW']) !== $accessKey
        
    ) {
            
    header('WWW-Authenticate: Basic realm="Contao debug"');
            
    header('HTTP/1.0 401 Unauthorized');
            die(
    sprintf('You are not allowed to access this file. Check %s for more information.'basename(__FILE__)));
        }


  5. #5
    Contao-Nutzer
    Registriert seit
    16.11.2016.
    Beiträge
    49

    Standard

    Hallo in die Runde,
    mir wachsen gerade schon graue Haare bei dem Thema…
    Ich habe eine Contao 4.4.8 Installation, die ich dringend mit einer Basic Auth absichern muss. Aber mir fehlt leider das entsprechende Wissen…

    Ich habe folgenden Befehl genannt bekommen:

    vendor/bin/contao-console contao:install-web-dir --user=foo --password=bar

    Den habe ich in der Konsole ausgeführt und daraufhin folgendes Ergebnis erhalten:

    Added/updated the web/app_dev.php file.
    Added/updated the web/app.php file.

    Ich kann aber zum einen keinen Unterschied zur vorherigen Version der Datei erkennen, zum anderen weiß ich nicht, wie ich nun weiter vorgehen muss. Es soll doch sicher nun noch ein User und ein PW erstellt werden, mit dem man sich einloggen muss.

    Argh! :-)

    Ich bin für jeden Tipp dankbar!

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    35.517
    Partner-ID
    10107

    Standard

    Du hast misverstanden was der Befehl macht. Der Befehl sichert die app_dev.php mit einem Benutzernamen und Passwort ab, sonst nichts.

  7. #7
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Du kannst die Direktiven für die HTTP Basic Authentication einfach in Deiner .htaccess im Contao web/ Unterordner ergänzen:
    Code:
    AuthType Basic
    AuthName "Website Login"
    AuthUserFile <serverpath>/.htuser
    Require valid-user
    Den Serverpfad zur .htuser bzw. .htpasswd musst Du natürlich entsprechend anpassen.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  8. #8
    Contao-Nutzer
    Registriert seit
    16.11.2016.
    Beiträge
    49

    Standard

    Hallo Spooky,
    danke für den Hinweis. Inzwischen hat es mit

    vendor/bin/contao-console contao:install-web-dir -p

    geklappt. :-)

  9. #9
    Contao-Nutzer
    Registriert seit
    16.11.2016.
    Beiträge
    49

    Standard

    Hallo xchs,
    Contao läuft hier auf einem nginx Server mit Symfony Profil, da funktioniert die htaccess Variante meines Wissens nach nicht.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •