Good evening,
I am creating an Android Application with a Django based server to interface this App with the central databases where information is stored.
I read this article CSRF in Mobile Applications that mentions that Apps are CSRF safe, so I don't need to guard my server against this kind of attacks.
But what if I'm thinking of (in the future) expanding this project so the user can use both the Android app and a website to see and modify his information. What is the best strategy than?
Should I keep separate sessions in the browser, differentiating between website users and the android app ones and check for csrf tokens only in the website ones? Or should I create a completelly separate website from this server, and make only the website csrf protected? Or even, should I keep the csrf protection on and treat it in the android app?
Thank you for the help,
--- Edit ---
@petkostas suggested that I used a REST architecture. I've been reading about REST and, so far as I understood it, there's no sessions kept in it.
So, if REST is your suggestion, how would I keep some of the data safe to only some of the users, change the architecture so I have sessions, or request the username and login from the user at every request (this seems like a bad alternative, because I would have to send sensitive information (password) in every request)?