Andrise programmeerimisalane WIKI
Google kasutajad
Google App Engine pakub arendajatele mugavat kasutajate haldust - Google Accounts süsteemi läbi, nii ei ole vaja ise kogu vajalikku infrastruktuuri üleval pidada ja saab kohe aplikatsiooni põhifunktsionaalsust arendama hakata. Sama kasutajanime ja parooliga millega siseneb kasutaja näiteks oma GMail postkasti või kirjutab Blogger teenuses blogpostitusi, saab ta sisse logida ka suvalisse Google App Engine platvormil paiknevasse aplikatsiooni.
Google kontode kasutamiseks tuleb sisse laadida users teek.
from google.appengine.api import users
Programmi käigus saab kontrollida sisseloginud kasutaja staatust käsuga users.get_current_user(), sellega saab kätte sisseloginud kasutajaga seotud info või False, kui kasutaja pole sisse logitud.
user = users.get_current_user()
user objekt koosneb kolmest funktsioonist, mis tagastavad endaga seotud info.
user.nickname()tagastab kasutaja hüüdnime. Üsna tihti on see kasutajatel seadmata ja sellisel juhul on välja väärtuseks kasutaja e-posti aadressi esimene osa (enne @ märki)user.email()tagastab kasutaja e-posti aadressiuser.user_id()tagastab kasutaja ID stringi kujul. Juhul kui kasutaja muudab oma e-posti aadressi, jääb ID samaks
user = users.get_current_user() if user: self.response.out.write("Sinu e-posti aadress on %s" % user.email()) else self.response.out.write("Pole sisse logitud")
Kasutaja sisselogimiseks ja väljalogimiseks saab users teegi abil genereerida vajalikud aadressid, millele suunates näidataksegi sisselogimisvormi või logitakse kasutaja välja.
users.create_login_url(sihtkoha_url)- tekitab sisselogimisvormi aadressi, millele kasutaja suunates avaneb sisselogimisvorm.sihtkoha_urlon aadress, kuhu suunatakse kasutaja peale edukat sisselogimist.

Joonis 3. Google Konto poolt genereeritud sisselogimisvorm
create_logout_url(sihtkoha_url)- genereerib väljalogimisaadressi, kui kasutaja sellele aadressile suunata, logitakse kasutaja välja ning suunataksesihtkoha_urlaadressile.
Täiendavalt saab veel kontrollida, kas sisseloginud kasutaja näol on tegu aplikatsiooni administraatoriga. Administraatorid on kõik kasutajad, kes on lisatud aplikatsiooni administratsiooni lehel aplikatsiooni arendajateks. Administraatori staatust saab kontrollida funktsiooniga users.is_current_user_admin().
if users.is_current_user_admin(): self.response.out.write("oled admin") else: self.response.out.write("ei ole admin")
Käidud rada: • memcache • tasuline • rakendus • platvorm • app_yaml • paigaldus • sdk_kasud • tutvustus • django_naide • service_users