Zum Inhalt springen

Sicherheitsfragen bei der Integration einer API in ein selbst entwickeltes Shopsystem


Empfohlene Beiträge

 

Hallo zusammen,

ich stehe gerade vor der Herausforderung, eine API in mein selbst entwickeltes Shopsystem zu integrieren, und möchte sicherstellen, dass die Sicherheitsaspekte angemessen berücksichtigt werden. Ein Ansatz, den ich in Betracht ziehe, ist das Verbergen von Admin-Funktionen hinter einem Login, indem beispielsweise der "Produkt hinzufügen"-Button nur für Admins sichtbar ist. Allerdings frage ich mich, ob das ausreichend ist oder ob zusätzliche Sicherheitsmaßnahmen auf der Endpointebene erforderlich sind.

Darüber hinaus würde mich interessieren, wie man verhindern kann, dass Benutzer einfach Postman oder ähnliche Tools verwenden, um meine Endpoints abzufragen. Welche Maßnahmen sind hier sinnvoll, um unerlaubten Zugriff zu verhindern?

Vielen Dank im Voraus für eure Erfahrungen und Ratschläge!

 

VG,

MAGGS

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

bei der API musst du die gleichen Sicherheitsmechanismen berücksichtigen wie bei Aufrufen mit dem Browser. Technisch gesehen ist das das Gleiche, nur statt HTML kommt halt JSON zurück (oder was auch immer).

Alles was im Browser direkt passiert, ist nette Spielerei bzw. nur die die Benutzerfreundlichkeit gedacht. Es ist nett, wenn der Benutzer den Button "Produkt hinzufügen" Button nicht sieht, wenn er eh nichts damit anfangen kann. Wichtig ist aber, dass der Webrequest zum Produkt hinzufügen abgesichert ist bzw. mit Login/Berechtigung etc. überprüft wird.

Postman wirst du nicht verhindern können. Es gibt ein paar Möglichkeiten um es schwerer zu machen (User-Agent überprüfen, CSRF etc), aber ob jetzt am Ende Firefox, Chrome, CURL oder Postman dahinter steht, wirst du nie absolut sicher feststellen können. Konzentriere dich darauf, die API bzw den Shop richtig abzusichern, dann kann es dir egal sein wie genau er aufgerufen wird. (Es macht ja auch keinen Unterschied, ob ein User jetzt Postman oder Chrome/Firefox etc benutzt, er kann so oder so das gleiche machen)

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 23 Minuten schrieb Funfare1337:

Hallo,

bei der API musst du die gleichen Sicherheitsmechanismen berücksichtigen wie bei Aufrufen mit dem Browser. Technisch gesehen ist das das Gleiche, nur statt HTML kommt halt JSON zurück (oder was auch immer).

Alles was im Browser direkt passiert, ist nette Spielerei bzw. nur die die Benutzerfreundlichkeit gedacht. Es ist nett, wenn der Benutzer den Button "Produkt hinzufügen" Button nicht sieht, wenn er eh nichts damit anfangen kann. Wichtig ist aber, dass der Webrequest zum Produkt hinzufügen abgesichert ist bzw. mit Login/Berechtigung etc. überprüft wird.

Postman wirst du nicht verhindern können. Es gibt ein paar Möglichkeiten um es schwerer zu machen (User-Agent überprüfen, CSRF etc), aber ob jetzt am Ende Firefox, Chrome, CURL oder Postman dahinter steht, wirst du nie absolut sicher feststellen können. Konzentriere dich darauf, die API bzw den Shop richtig abzusichern, dann kann es dir egal sein wie genau er aufgerufen wird. (Es macht ja auch keinen Unterschied, ob ein User jetzt Postman oder Chrome/Firefox etc benutzt, er kann so oder so das gleiche machen)

@Funfare1337 vielen lieben dank für deine Tipps,!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was du brauchst ist im Kern eine vernünftige Authentifizierung (und Autorisierung) an der API, z. B. token basiert via JWT oder Oauth. Wer keine Permissions hat, darf dann halt die API Endpunkte nicht nutzen und auch keine Produkte eben über diese hinzufügen. HTTPs sollte eh klar sein. 

Weitere Security Maßnahmen (OWASP, RateLimiting, ...) würde ich eher ganzheitlich betrachten, denn der Shop wird ja auch ohne API Angriffen ausgesetzt sein. Eventuell habt ihr schon eine WAF oder ähnliches mit OWASP Ruleset und könntet über ein API Gateway nachdenken, mit der du das Thema Authentifizierung+Autorisierung ebenfalls angehen könntest.

Bearbeitet von bloodyberry
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...