问题标签 [flask-security]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
478 浏览

flask - Flask-Security error "User object has no attribute roles'

This is my first time using Flask-Security, and I can't seem to successfully create a user.

Every time I try, I get a "User object has no attribute roles" error.

Here is the relevant code: https://gist.github.com/ianseyer/f08d3f47471588e79022

EDIT: Realized it might be because i didn't not have __tablename__ = 'roles', but that gives me this error:

0 投票
0 回答
629 浏览

python - Flask: how to authenticate user on subdomain?

A user logins in through mydomain.com. How can I make it so that when they visit their own server at subdomain.mydomain.com, that they won't have to relogin? Alternatively, if a user logs in through subdomain.mydomain.com, they should find themselves logged in at mydomain.com

subdomain.mydomain.com points to another server with a different ip.

0 投票
2 回答
8290 浏览

python - 使用 Flask-Security 验证 REST API

我正在使用Flask-Security构建一个具有公共 REST API 的 Web 应用程序。我试图弄清楚如何仅使用 REST 调用添加用户注册和登录。使用user_datastore.create_user. 但是我怎样才能使用 REST 调用登录用户呢?
如果flask_security.utils.login_user将用户名+密码或令牌作为参数,这很容易,但它需要一个用户对象吗?该文档显示了如何使用表单和视图注册和登录,但我需要能够从 IOS 设备注册和登录(使用 RESTkit)。

0 投票
1 回答
3607 浏览

sqlite - StatementError:SQLite 日期类型仅接受 Python 日期对象作为输入

我正在使用 Flask-Security,代码看起来不错,但是当从寄存器视图插入数据时,它会出现以下错误。因为我做了 SECURITY_TRACKABLE = True 我在我的模型中添加了一些额外的字段,问题可能就在那里:(

这是我为扩展我的 RegisterForm 而编写的表单:

这是我的models.py:

0 投票
1 回答
363 浏览

python - 烧瓶安全。将 datetime(2014, 5, 31, 23, 46, 38, 559513) 转换为 python 格式 datetime(2014-5-31, 23:46:38.559513)

我正在使用 Flask-Security,一切正常,除了电子邮件确认链接。显然,当用户注册时,他会收到一封电子邮件,其中包含确认电子邮件的链接,因此当他/她单击该链接时,我的应用程序会给出 SQL 日期时间错误。确切的错误是:

因此,想问我应该怎么做才能克服这个错误。

这是我的models.py:

0 投票
2 回答
8359 浏览

python - 结合 Flask-restless、Flask-security 和常规 Python 请求

我的目标是为我的 Web 应用程序提供一个 REST API。使用:

  • Python 2.7.5
  • 烧瓶==0.10.1
  • Flask-Restless==0.13.1
  • 烧瓶安全==1.7.3

我需要保护对 Web 和 REST 访问的数据的访问。request但是,在尝试连接到安全 API 时,我无法让任何常规 python成功。

使用本问题末尾提供的全功能模块获得以下输出。

使用时我设法得到正确的答案http://127.0.0.1:5000/api/v1/free_stuff

尝试使用以下方式进行身份验证时http://127.0.0.1:5000/api/v1/protected_stuff

这是一个用于产生上述结果的虚拟功能模块:

任何想法?

[编辑] 要通过Web 界面发挥全部功能,您需要有一个templates至少包含以下login.html文件的子文件夹:

0 投票
1 回答
10875 浏览

python - SMTPServerDisconnected:请先运行 connect()

我正在探索烧瓶并尝试设置一个具有安全注册和登录功能的简单网络应用程序。我正在使用烧瓶安全性来做到这一点。不幸的是,当我导航到发送确认页面时,我收到错误消息:“smtpserverdisconnected:请先运行 connect()”。

下面是我写的相关文件。run.py驱动整个应用程序。

apprun.py(在文件夹旁边)

下面的所有内容都在app文件夹中

__init__ .py

模型.py

视图.py

编辑:另外,这是我正在使用的配置文件

0 投票
1 回答
790 浏览

python - 将 Flask-Migrate 与 Flask-Security 一起使用

我正在尝试让一个基本的 Flask-Security 应用程序与 Flask-Migrate 一起使用。我有两个主要的 py 文件:app.py 和 db_migrate.py

应用程序.py:

db_migrate.py:

我已经运行了迁移工具来初始化和迁移数据库一次,以创建一个新的数据库,它起作用了:

我试图运行 app.py。它在 localhost 上正常运行,但是当我尝试登录用户时,我收到以下 OperationalError:

OperationalError: (OperationalError) no such table: user u'SELECT user.id AS user_id, user.email AS user_email, user.password AS user_password, user.active AS user_active, user.confirmed_at AS user_confirmed_at, user.favcolor AS user_favcolor \nFROM用户\nWHERE lower(user.email) LIKE lower(?)\n LIMIT ? 抵消 ?' (u'xxx@xxx.com', 1, 0)

基本上,我怀疑我正在创建user_datastore并且security正确,因为我可能不应该以这种方式导入User-Role但我不确定如何正确访问它们。

编辑:

由于建议,我添加了这个最终命令:

但是,现在当我尝试通过电子邮件确认用户注册时出现此错误:

(InvalidRequestError: Object '' is already attached to session '1' (this is '3')

0 投票
2 回答
885 浏览

python - flask-security:最小化数据库命中

在我的应用程序中,我使用了flask-security来添加身份验证和授权主题。SQLAlchemy 也用作数据提供者(以 MySQL 作为后端)。该应用程序运行良好。

然后,我进行了一些 MySQL 跟踪,日志显示在应用程序上请求的每个 URL 处,flask-security 库都会发送两个数据库查询:

  • select ... from user where user.id = 'the user identifier'
  • select ... from role, roles_users ...

我认为这是一个性能问题,我喜欢尽量减少这些查询。我不知道我是否缺少配置功能。

0 投票
1 回答
2583 浏览

python - 限制 Flask-Admin 的一个视图?

我有一个用于 Flask 应用程序的文件,views.py.

在里面views.py,我在这里设置Flask-Admin了相应的sqlalchemy数据库:

问题。

如何根据用户的级别(使用数据库“testlevel”定义)阻止对“/admin/userview”页面的访问?用户有 3 种品质,两个用户的示例是:

我如何将管理页面限制为只允许使用的人testlevel="admin"?我使用 Flask-Security 吗?烧瓶校长?如果是这样,怎么做?我已经对两者进行了一些修补,到目前为止我还没有得到任何工作。

这是一个示例“/admin/userview”,如下所示:example Flask-Admin

首先,您可以使用各种类级别的属性来配置应该显示什么以及如何显示。例如,column_list 可用于显示某些列或包含来自相关模型的额外列。

例如

或者,您可以覆盖一些 ModelView 方法并实现您的自定义逻辑。

例如,如果您需要为生成的表单提供额外的字段,您可以执行以下操作:

查看flask.ext.admin.contrib.sqlamodel 文档以获取配置属性和方法的列表。谢谢!