Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak zezwolić na dostęp do mojej bazy danych MySQL tylko z mojej aplikacji na iOS? (Korzystanie z aplikacji internetowej jako bramy do db)

Jak wspomniano wcześniej, nie ma 100% bezpieczeństwa. Ale istnieje kilka rozwiązań, które razem dają duże bezpieczeństwo.

Https

Jak podkreślasz, jest to ważna część, ponieważ zapobiega wąchaniu.

Sesje

Używaj sesji i nie zezwalaj na żadne żądania bez ważnej sesji (z wyjątkiem pierwszego, które musi uwierzytelnić aplikację).

Odcisk palca

Sprawdź klienta użytkownika i ustaw dodatkowe nagłówki http, aby uzyskać odcisk palca unikalny dla Twojej aplikacji. (Wciąż ktoś mógł powąchać, ale musiał użyć curl itp.)

Zaciemniaj żądania

Zbuduj ciąg zapytania i zastosuj funkcję skrótu. Serwer musi zaimplementować funkcję reverse. ?43adbf764Fz zamiast ?a=1&b=2

Zaszyfruj

To idzie o krok dalej. Użyj wspólnego hasła, aby obliczyć skrót. Na serwerze powtórz to samo. To już jest silne zabezpieczenie. Aby się zepsuć, trzeba przeprowadzić inżynierię wsteczną aplikacji.

Użyj unikalnego udostępnionego klucza tajnego

Mówisz, że to aplikacja na iOS. Po instalacji unikalny token jest generowany przez iOS. Niech Twoja aplikacja zarejestruje ten token na serwerze. W ten sposób masz silny wspólny sekret unikalny dla każdej instalacji i nie byłoby możliwości zhakowania Twojej aplikacji internetowej.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zainstalować pyodbc w wersji 64-bitowej?

  2. Zmiana backendu bazy danych Django z MySql na PostgreSQL

  3. Zapętl MySQL, aby wstawić dane do tabeli

  4. sprawdzanie statusu użytkownika (aktywny, nieaktywny) na stronie internetowej

  5. Łącznik MySQL 6.7.4 i wyjątki Entity Framework 5