We are an agile-thinking company. Following the philosophy, we've decided not to support Internet Explorer. It's just not worth the effort. Since you're using it, you might experience various issues with the site.
Poměrně často narážíme na požadavek omezení přístupu uživatelů do aplikace na AppEngine.
Modelový příklad: Zákazník si přeje omezit přístup do aplikace tak, aby do ní mohli pouze uživatelé z domény xxx.cz, yyy.cz a fragaria.cz.
Google nabízí pouze omezení přístupu buď na libovolnou (ale pouze jednu) Google Apps doménu nebo na jakéhokoliv uživatele z Google Apps domény bez omezení.
První možnost tedy použít nemůžeme, druhou používáme k vynucení přihlášení uživatele – omezení na Google Apps domény je pro nás OK.
Postup, který jsme používali dosud je podobný jako například v tomto článku. Připravíme si anotaci @user_required, která zkontroluje uživatele a tu “nalepíme” na všechny metody příslušných HTTP handlerů. To ale znamená, že máme anotace rozeseté všude a je snadné jí někde zapomenout.
Dneska +Robin Gottfried přišel s mnohem elegantnějším řešením. Využívá metodu __call__() z webapp2, přes kterou procházejí všechny requesty v aplikaci a kontrolu dělá tam.
Asi takhle:
Samozřejmě je nutné místo standardní WSGIApplication použít vlastní podtřídu: