sql >> Database >  >> RDS >> Mysql

Hoe geef ik alleen toegang tot mijn MySQL-database vanuit mijn iOS-app? (Webapp gebruiken als gateway naar db)

Zoals eerder vermeld, is er geen 100% beveiliging mogelijk. Maar er zijn verschillende oplossingen die samen een grote veiligheid bieden.

Https

Zoals je aangeeft, is dit een belangrijk onderdeel, omdat het snuffelen voorkomt.

Sessies

Gebruik sessies en sta geen enkel verzoek toe zonder een geldige sessie (behalve de eerste, die de app moet authenticeren).

Vingerafdruk

Controleer de user-agent en stel extra http-headers in om een ​​unieke vingerafdruk voor uw app te krijgen. (Nog steeds kon iemand snuiven, maar hij moest krul of iets dergelijks gebruiken. )

Vervagen verzoeken

Bouw uw queryreeks en pas een hash-functie toe. De server moet de omgekeerde functie implementeren. ?43adbf764Fz in plaats van ?a=1&b=2

Versleutelen

Dit gaat een stap verder. Gebruik een gedeeld geheim om een ​​hash te berekenen. Herhaal hetzelfde op de server. Dit is al een sterke beveiliging. Om te breken, moet je je app reverse-engineeren.

Gebruik uniek gedeeld geheim

Je zegt dat het een app voor iOS is. Bij installatie wordt een uniek token gegenereerd door iOS. Laat uw app dit token registreren bij uw server. Op deze manier heb je een sterk gedeeld geheim dat uniek is voor elke installatie en is er geen manier om je web-app te hacken.




  1. Selecteer 2 kolommen en voeg gegevens samen

  2. Hoe de AUTO_INCREMENT-kolom opnieuw toe te wijzen voor elke rij in een MySQL-tabel met behulp van PHP

  3. Hoe sla je een MySQL-queryresultaat op in een variabele in c

  4. Ik heb ongebruikelijke mysql-resultaten nodig