Authorization er den proces, der foregår, når man styre brugernes adgang til data.  På styrdindiabetes.dk skal det foregå på to niveauer:

  1. Kun brugere, der er logget på, må kunne tilgå data.
  2. En bruger må kun kunne tilgå sit eget data.

Det er punkt 1, vi skal se på i dette indlæg.

Vi har tidligere set på, hvordan Azure Mobile Services har authentication med Facebook o.a. indbygget.  Azure Mobile Services har også indbygget funktionalitet til at styre, hvem der må tilgå de databasetabeller, man opretter i backenden.  Det hele foregår i Azure Management portalen.

For hver tabel oprettet i Mobile Services, findes en Permissions side, hvor man kan angive, hvem der må udføre hver af de 4 CRUD operationer.  Man har følgende fire muligheder:

  • Everyone
  • Anybody with the Application Key
  • Only Authenticated Users
  • Only Scripts and Admins

image

Bemærk at for et website er der i praksis ingen forskel på “Everyone” og “Anybody with the Application Key”, da vores application key står frit tilgængelig i JavaScript’en, så enhver, der kender til højreklik og “Vis kilde” i browseren, kan få fat i nøglen.

Når en bruger via sitet forsøger at tilgå denne tabel vha. client.getTable("Entries"), vil Azure forhindre al tilgang for brugere, der ikke er logget på vha. Facebook eller andet.

I næste indlæg skal vi se på, hvordan vi sikrer, at brugerne kun kan tilgå deres eget data.

Kommentarerne er lukkede