Contao-Camp 2024
Ergebnis 1 bis 7 von 7

Thema: mitglieds überprüfung

  1. #1
    Contao-Nutzer
    Registriert seit
    26.03.2011.
    Beiträge
    7

    Standard mitglieds überprüfung

    hallo,

    ich habe folgendes vor:

    User sollen sich auf einer contao Seite anmelden, als Frontend Mitglieder.
    Nun habe ich eine Url z.b. ?pw=ddddd&name=ffff, die Seite soll das mit der Datenbank abgleichen und ein OK geben wenn Username und Passwort stimmen.
    Sprich der User in der Datenbank vorhanden ist.

    Ich habe nun schon rausbekommen, dass die Contao Passwörter als SHA1 hash + zufälliger salt gespeichert werden.
    Wie und wo (in welcher Datei) kann ich hier einen festen Salt vergeben, damit ich die URL generieren kann um das Passwort nicht in klartext übertragen zu müssen.
    Oder was ist die beste und sicherste Möglichkeit solch eine Abfrage umzusetzen?

    gruß
    Wolfgang

  2. #2
    Contao-Nutzer Avatar von drefsa
    Registriert seit
    25.06.2009.
    Ort
    0°0'0''
    Beiträge
    186

    Standard

    Kannst DU nicht "einfach" die Login_Seite auf SSL umstellen?
    Grüße
    drefsa

  3. #3
    Contao-Nutzer
    Registriert seit
    26.03.2011.
    Beiträge
    7

    Standard

    hm aber das hilft mir ja bei meinem Problem nicht weiter, oder?

    Das Problem ist ja das ich das Passwort als Hash verschicken möchte, der dann direkt mit den Daten in der SQL datenbank abgeglichen wird.
    Da der Salt aber zufällig generiert wird? geht das so nicht?

    Daher dachte ich daran einen festen Salt zu verwenden, falls dies nicht vollkommen falsch ist.
    Ich finde nur nicht wo, in welcher Datei festgelegt ist wie das Passwort gehasht wird.

    Oder habe ich hier den völlig falschen Ansatz?

  4. #4
    Contao-Nutzer
    Registriert seit
    26.03.2011.
    Beiträge
    7

    Standard

    weiß keiner weiter?

    sorry für den push...

    gruß altertech

  5. #5
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    Was bringt dir das wenn du das pass gesalzen mitgibst?
    Contao wyrde das gesalzene dann nochmal salzen und es passt dann wieder nicht.

    Was genau willst du denn erreichen?

    Login ohne Eingabe von Benutzername und Password? Single Sign On? Remote auth?

    Hier braucht es viel mehr Informationen, vorher kann man dir nicht helfen.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

  6. #6
    Contao-Nutzer
    Registriert seit
    26.03.2011.
    Beiträge
    7

    Standard

    hi danke schonmal für das bemühen,

    also was ich grundsätzlich erreichen möchte, ist den Login der Seite extern zu nutzen.

    User sind also bei der Seite als Frontend Mitglieder angemeldet und in der Datenbank gespeichert.
    Nun soll extern ein Login Formular zur Verfügung gestellt werden wo sich Benutzer einloggen können, also eine Anfrage an die Seite gestellt werden: existiert der Benutzer? stimmt das Passwort? die Seite soll dies dann bestätigen.

    Das ganze sollte natürlich möglichst sicher von statten gehen.

    Ich bin mir nochnicht klar darüber wie man dies am geschicktesten umsetzt.

    Ich dachte ich stelle ein Login Formular zur Verfügung und dies ruft dann über einen Link die Seite auf, an den link ist dann halt ?pw=ddddd&name=ffff oder ähnliches angehängt.
    Das Passwort soll hier natürlich nicht klartext versendet werden. deshalb weiß ich hier nicht so recht wie das dann funktioniert. Ich dachte ich kann das Passwort schon an der externen Quelle so "verhashen", das es mit dem Hash der Seite übereinstimmt.
    Da aber contao ja einen zufälligen Salt anfügt ist das nicht machbar? Oder verstehe ich hier etwas falsch?

    Reicht das an Information? ich tue mich etwas schwer dabei genau zu formulieren wie das alles funktionieren soll...

    gruß
    Wolfgang

  7. #7
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    IMO solltest du das lieber mit einer sauberen API loesen als durch solche Umwege.

    Beispiel:
    Benutzer loggt sich bei dir ein.
    Webserver sendet username, und passwort per POST an eine Contao API URL (Format erstmal egal ob SOAP, REST oder XML API).
    diese liefert dann OK oder NOT OK usw.
    Dann kann dein Server dementsprechend agieren.

    Damit hast du dann keine Parameter an URL usw. und der Benutzer bekommt nix davon mit, weil die beiden Webseiten das "transparent im Hintergrund" erledigen.

    doch nun noch eben zur Aufklaerung deines generellen Verstaendnisproblems.

    Das Salt ist einfach nur enthalten, um die Verschlysselung des Passwortes ggyber sog. Rainbow table attacken unanfaelliger zu machen.

    Contao geht beim speichern des Passwortes wie folgt vor:
    Es generiert ein zufaelliges "salt", welches an das passwort angehaengt wird. Erst dann wird das Passwort verschlysselt und mit dem verwendeten Salt abgespeichert.

    Wenn nun ein Passwort gecheckt wird, dann wird das ybergebene Passwort nach obiger Methode ebenso verschlysselt und mit dem gespeicherten Wert verglichen.

    Das externe hashen bringt dir also im Endeffekt gar nichts, denn dann mysstest du ebenfalls eine API implementieren, welche die hashes direkt vergleicht. Dennoch wyrdest du hierbei die hashes ebenfalls im Klartext transportieren, was dir dann zwar nicht das richtige Passwort gibt, aber das brauchst du ja auch gar nicht mehr, denn du hast ja schon das hash, welches du verwenden kannst um dich bei der API anzumelden.

    Du solltest dir dein gesamtes Authentifizierungskonzept nochmal yberdenken und dann als php modul implementieren (oder einen Programmierer engagieren der das fyr dich erledigt).
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

Aktive Benutzer

Aktive Benutzer

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

Lesezeichen

Lesezeichen

Berechtigungen

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