2011-12-14 9 views
9

¿Cuál es el enfoque común de agregar control de acceso a un modelo en Flask?¿Requiere iniciar sesión para ciertos planos en Flask?

Por ejemplo, tengo un proyecto llamado admin con url_prefix='/admin'

¿Cómo fuerzo todos los puntos de vista bajo /admin deben ser autenticados superusuario en primer lugar?

Respuesta

8

lo encontró http://flask.pocoo.org/snippets/59/

from flask import Blueprint 
from flask import redirect, request 
from google.appengine.api import users 

bp = Blueprint('admin', __name__) 

@bp.before_request 
def restrict_bp_to_admins(): 
    if not users.is_current_user_admin(): 
     return redirect(users.create_login_url(request.url)) 
+0

¿Qué pasa si no quiero que mi modelo a depender explícitamente en el módulo de autenticación? Solo quiero que la parte 'app.register_blueprint' dependa de auth, así que puedo instanciar el mismo blueprint con múltiples backends de autenticación. –

Cuestiones relacionadas