Toon posts:

[Android] Best practise(s) opslaan authenticatie

Pagina: 1
Acties:

Acties:
  • 0Henk 'm!

  • PieterAelse
  • Registratie: Februari 2007
  • Laatst online: 20-03 14:30
Momenteel werk ik, als student zijnde, met een aantal mensen aan een Android app die in samenwerking met een webservice data kan ophalen. De gebruiker kan deze data refreshen dus het contacteren van de webservice gebeurd meer dan 1x. Voor de (data die verkregen wordt uit de) webservice zijn een gebruikersnaam en wachtwoord nodig. Deze zijn bij de gebruikers al bekend aangezien ze ook voor andere diensten worden gebruikt. Hierdoor is de beveiliging van deze gegevens ook belangrijk, vooral het wachtwoord natuurlijk.

Het probleem waar we tegenaan lopen is dat er nog geen ervaring of kennis is over eigenlijk de best practise in Android om deze communicatie veilig te doen. Er zal namelijk iets op de telefoon opgeslagen moeten worden van naam/wachtwoord of een token o.i.d.

De simpelste methode, shared preferences, is geen optie aangezien een gebruiker met root toegang tot zijn toestel de data simpelweg kan ophalen. Andere mogelijke opties die we onder ogen hebben zijn: Encoding, oath en de Accountmanager van Android. De ogen zijn nu gericht op oauth, maar de webservice is nog niet zover.

Er is al rondgekeken naar de mogelijkheden en gezocht naar best practises, maar er kwam geen duidelijke oplossing naar voren. Daarom hoop ik hier goede ideeën op te doen voor het opslaan van credentials/tokens op een Android systeem (dat wellicht root toegang heeft).

Acties:
  • 0Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Wat is het probleem dat iemand z'n eigen token kan terughalen op een rooted toetstel, de token is immers toch voor de user zelf? Een OAuth2 server is vrij simpel om zelf te maken.

Acties:
  • 0Henk 'm!

  • PieterAelse
  • Registratie: Februari 2007
  • Laatst online: 20-03 14:30
Het opzetten van oauth zal het probleem ook niet vormen. Echter wil ik tot een juiste keuze komen voordat we even oauth gaan proberen natuurlijk.

Nu heb ik geen oauth ervaring, wordt de authenticatie meestal binnen de app zelf gedaan of wordt de (standaard) browser gebruikt? Het laatste lijkt me namelijk iets minder gebruikersvriendelijk.

Acties:
  • 0Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Binnen de Oauth2-spec kun je ook met credentials een access token verkrijgen dus kun je het in-app houden. Facebook doet dit overigens ook in hun app.

Acties:
  • 0Henk 'm!

  • Jegorex
  • Registratie: April 2004
  • Laatst online: 11-02 16:14
Ik heb er zelf nooit naar gekeken, maar misschien is de AccountManager wat je zoekt?

Acties:
  • 0Henk 'm!

  • PieterAelse
  • Registratie: Februari 2007
  • Laatst online: 20-03 14:30
@Jegorex: Zoals ik in de TS vermeld is de AccountManager inderdaad een van de opties. Zelf ook nog niet diep genoeg naar gekeken om te weten of het dé oplossing is. Vandaar de quest naar de best practise:p
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee