Ankündigung

Einklappen
Keine Ankündigung bisher.

Sicherheit von öffentlichen APIs

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Sicherheit von öffentlichen APIs

    Hallo,

    ich baue gerade ein System, über dem sich User in einer Angular Anwendung registrieren können. Die Angular Anwendung sendet dann einen POST Request an eine API um den Benutzer in der Datenbank zu speichern. Meine Frage ist, wie kann ich verhindern, dass irgendwer, der sich zum Beispiel nicht auf der Seite befindet sondern das über ein curl Aufruf etc. macht einen Benutzer anlegen kann. Der Request Host ist ja Fakebar, und die IP kenn ich ja nicht, da ja jeder auf die Seite kommen kann um sich zu registrieren.

    Was gibt es hier für Sicherheitskonzepte?

    Liebe Grüße
    Kerstel






  • #2
    zB ein Security Token, oder die Angbabe von Auth-Daten (User / Password) etc. Schau dir mal die APIs an die man so kennt.. denk da kann man das gut sehen.

    Schau dir mal hier die ersten paar Treffer an: https://www.google.com/search?q=api+absichern
    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Hi,

      es gibt zu diesem Zeitpunkt ja keine Auth-Daten. Der Security Token muss ja auch angefordert werden, was man auch über curl kann.

      Wenn Benutzerdaten vorliegen, ist das ja alles kein Thema. Darum geht es ja nicht.

      Liebe Grüße
      Kerstel

      Kommentar


      • #4
        Zitat von kerstel Beitrag anzeigen
        Meine Frage ist, wie kann ich verhindern, dass irgendwer, der sich zum Beispiel nicht auf der Seite befindet sondern das über ein curl Aufruf etc. macht einen Benutzer anlegen kann.
        Gar nicht. Du kannst es nur kompliziert machen. Absichern würdest du sowas, in dem du die Komunikation verschlüsselst und sicherstellst das du mit dem richtigen Client sprichst. Das gibts mit HTTPS auch standardiesiert in Form von Client Zertifikaten. Das Problem dabei ist, der Client wird auf Systemen ausgeführt über die jemand anders die Kontrolle hat. Es ist damit also möglich die Schlüssel oder eine properitäre Verfahren zu extrahieren, insbesondere wenn der Client eine Javascript Anwendung ist. Du musst den Aufwand soweit steigern, das für eine potentielle Angreifer, Aufwand/Nutzen in keinem Verhältnis mehr steht.


        Kommentar


        • #5
          Eine Hürden stellt eine eine Verifizierung durch analoge Mechnismen dar.
          Eine andere, wenn Du Nutzer anlegt.

          Kommentar

          Lädt...
          X