Dire che ho una struttura semplice:
app = webapp2.WSGIApplication([
(r'/', 'pages.login'),
(r'/profile', 'pages.profile'),
(r'/dashboard', 'pages.dash'),
], debug=True)
Fondamentalmente tutte le pagine richiedono l'autenticazione ad eccezione del login. Se il visitatore tenta di raggiungere una pagina restrittiva e non è autorizzato (o non ha i privilegi), viene reindirizzato alla vista di accesso.
La domanda riguarda il design del routing. Dovrei controllare auth e ACL privs in ognuno dei moduli ( pages.profile
e pages.dash
dell'esempio precedente), o semplicemente passare tutte le richieste attraverso il meccanismo di routing singolo:
app = webapp2.WSGIApplication([
(r'/', 'pages.login'),
(r'/.+', 'router')
], debug=True)
Sono ancora abbastanza nuovo per GAE, ma la mia app richiede l'autenticazione e ACL. Sono consapevole del fatto che esiste la direttiva login
sul livello di configurazione del server, ma non so come funziona e come posso farlo con la logica ACL e, peggio, non riesco a stimare il tempo necessario per farlo funzionare. Inoltre, sembra solo fornire solo 2 gruppi di utenti: admin
e user
.
In ogni caso, questa è la configurazione che utilizzo:
handlers:
- url: /favicon.ico
static_files: static/favicon.ico
upload: static/favicon.ico
- url: /static/*
static_dir: static
- url: .*
script: main.app
secure: always
O mi manca qualcosa qui e ACL può essere impostato nel file di configurazione? Grazie.