Я хотел бы защитить доступ к своим представлениям на основе ролей безопасности flask. Так, например, я установил:
class AdminView(ModelView):
def is_accessible(self):
return current_user.has_role('admin')
а также
admin.add_view(AdminView(User, db.session))
Логика работает: когда я вхожу под пользователем без прав администратора, я не вижу таблицу User, когда я вхожу под пользователем с правами администратора, я ее вижу.
Но...
ввод URL-адреса
localhost/admin/user
по-прежнему дает каждому пользователю доступ к таблице пользователей, как для администраторов, так и для обычных пользователей. Как я могу использовать flask Admin для защиты URL-адреса от доступа не-администраторов? (Честно говоря, я ожидал, что def is_accessible()
справится с этим в первую очередь.)