Wkrótce zaczynam nowy projekt, który dotyczy aplikacji mobilnych na wszystkie główne platformy mobilne (iOS, Android, Windows). Będzie to architektura klient-serwer.
Aplikacja ma zarówno charakter informacyjny, jak i transakcyjny. W przypadku części transakcyjnej muszą mieć konto i zalogować się, zanim będzie można dokonać transakcji. Jestem nowy w tworzeniu aplikacji mobilnych, więc nie wiem, w jaki sposób odbywa się uwierzytelnianie na tych platformach. Klienci będą komunikować się z serwerem za pośrednictwem interfejsu API REST. Będzie używał oczywiście HTTPS.
Nie zdecydowałem jeszcze, czy chcę się zalogować, gdy użytkownik otworzy aplikację, czy tylko podczas przeprowadzania transakcji.
Mam następujące pytania:
1) Podobnie jak w przypadku aplikacji na Facebooku, dane uwierzytelniające podaje się tylko przy pierwszym otwarciu aplikacji. Następnie automatycznie logujesz się przy każdym otwarciu aplikacji. Jak to osiągnąć? Po prostu przez szyfrowanie i przechowywanie poświadczeń na urządzeniu i wysyłanie ich przy każdym uruchomieniu aplikacji?
2) Czy muszę uwierzytelniać użytkownika dla każdego (transakcyjnego) żądania przesłanego do interfejsu API REST, czy stosować podejście oparte na tokenach?
Możesz zaproponować inne sposoby uwierzytelnienia.
Dzięki!