Vinnaren i pepparkakshustävlingen!
  • 1
  • 2
2023-01-26, 23:13
  #13
Medlem
Citat:
Ursprungligen postat av irrbloss
Identifierar du användarna/klienterna på något vis? Utan identifiering kan fortfarande andra utvecklare utnyttja ditt backend (istället för att utnyttja din API-nyckel).
Du kan använda API Gateway för att göra det om du vill. Det går t.ex. att göra det med hjälp av Lambda authorizers, men det finns många olika alternativ och du kan övervaka din API med CloudWatch. Jag rekommenderar att du läser om API Gateway om du är intresserad. AWS är lite av en djungel men om du vill göra något kan du förmodligen göra det på AWS.
Citera
2023-07-25, 23:54
  #14
Medlem
GrillTeknikers avatar
Känns som att många av svaren bara flyttar problemet från API-nyckeln till hur du nu autentiserar dig hos din egen backend.

En konkret lösning är att kryptera API-nyckeln och lagra den krypterad i appen. Nyckeln för att dekryptera kan du skapa "on the fly" i appen genom en lämplig hyfsat komplex algoritm som skapar något slags sträng som används som krypteringsnyckel. På så sätt behöver du inte lagra något i klartext.

Självklart kan en tillräckligt motiverad hackare antingen fixa något sätt att övervaka nätverkstrafiken från appen (fast med HTTPS är det inte en barnlek), eller dekompilera appen och lyckas återskapa formeln som dekrypterar den krypterade API-nyckeln. Men då ska det nog röra sig om betydligt merstöldbegärliga grejer än en väderapp

Många API'er, t.ex. Google Cloud, har mekanismer för att begränsa en API-nyckel baserat på t.ex. app-id, anropande webbdomän, etc.

En kombination av ovanstående krypteringsteknik, egen backend som anropar det riktiga API'et samt begränsning mha. API'ets egna begränsningsmekanismer torde vara fullt tillräckligt för de flesta behov.

Och om det är ett betal-API sätter du givetvis en övre budget med varning när kostnaden börjar närma sig budget, så riskerar du inte extremdyra överraskningar.
Citera
  • 1
  • 2

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback