问题标签 [flask-httpauth]

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 投票
4 回答
1808 浏览

python - 有条件地应用 Flask-HTTPAuth 的 login_required 装饰器

我正在尝试有条件地应用装饰器(Flask-HTTPAuth 的login_required)。如果 sky_is_blue == True,我想应用装饰器,如果 False,则不应用。

这需要随叫随到,因为它可能会在应用程序的生命周期内发生变化(实际上实际上并没有那么多,但绝对是出于单元测试的目的,无论如何我都很好奇原因)。

所以我将装饰器包裹在装饰器中。

在 False 情况下行为符合预期(不应用装饰器),但在 True 情况下应用装饰器时遇到问题。我不确定这是我做错了什么,还是与 Flask-HTTPAuth 的奇怪交互。

以下脚本演示了两个单元测试的问题。test_sky_not_blue 通过,但 test_sky_blue 失败并出现堆栈跟踪。

我得到的完整堆栈跟踪是:

使用 Python 2.7.11、Flask-HTTPAuth==2.7.1、Flask==0.10.1 进行测试,任何见解都将不胜感激。

0 投票
1 回答
698 浏览

python - 如何为 flask-httpauth 创建自定义登录验证方法?

今天我正在使用 python 和烧瓶创建一个小型 RESTfull 服务。看来,我似乎无法解决身份验证问题。

这是我的代码:

我不知道我可以返回什么,以及我的 login_user() 函数是否正确。

谢谢你的帮助,

干杯

编辑:当我运行代码时,我有这个错误:

0 投票
1 回答
1763 浏览

python - 让 Flask API 更安全

我正在使用 Flask-HTTPAuth ( https://github.com/miguelgrinberg/Flask-HTTPAuth ) 通过用户名和密码保护我的 API。由于它在端口 8080 上运行,因此我在我的 VM 上打开了该端口并将其公开。我还能做些什么来使 API 更安全吗?

顺便说一句,我在 Flask 前使用 Tornado 作为可扩展的服务器。而且我是唯一一个使用 API 的人,因此拥有一个用户名-密码对对我来说是一个可行的选择。

谢谢。

编辑 - 我可以在 Windows 防火墙上做些什么来使端口 8080 更安全吗?

0 投票
1 回答
1477 浏览

python-3.x - 从 flask_httpauth 导入 HTTPTokenAuth 时遇到问题

我正在尝试对 Flask 项目使用令牌身份验证。

我收到以下错误

我试过了

但它声称一切都是最新的。(Flask-HTTPAuth==3.1.1)

文档建议这是导入它的正确方法,但由于某种原因它不起作用。有什么想法可以让我导入令牌身份验证吗?

编辑:: 我删除并重新创建了我正在使用的虚拟环境。

我在任何地方都使用 python。

问题仍然存在。我发现默认加载旧版本的 Flask_httpauth(v2.2.0 而不是 v3.1.1)。我进入站点包,看到 HTTPTokenAuth 在那里并且应该被调用。

我试着做

检查我的应用程序调用的版本,但这不适用于所有 python 包,而且flask_httpauth 似乎没有该功能。

在 pythonanywhere 的 web 选项卡上链接了虚拟环境的位置没有显示错误。

0 投票
1 回答
1243 浏览

python - flask_httpauth 装饰器缺少必需的位置参数 f

我一直在使用 Miguel Grinberg 的一些身份验证教程,并且在使用 flask_httpauth 的 HTTPBasicAuth 装饰器时遇到了问题。每当我在函数上使用其中一个时,我都会收到一条错误消息,指出装饰器缺少必需的位置参数 f。我的理解是装饰器下面的函数作为参数隐式传递给装饰器函数。我错了吗?我正在使用 Python 3.5。

我的视图文件如下所示:

我的 init 文件(从中导入 auth、app、api 等)如下所示:

知道为什么这对我不起作用吗?确切的错误如下所示:

0 投票
2 回答
1609 浏览

python - 如何在 Flask 中对 HTTP 摘要式身份验证进行单元测试?

我有一个实现 REST api 的烧瓶应用程序。出于某种原因,我使用的是 HTTP 摘要式身份验证。我已经使用了 Flask-HTTPAuth 库来实现摘要式身份验证并且它可以工作;但是,我无法在单元测试中进行身份验证。

对于单元测试,在设置身份验证之前,我正在做这样的事情:

在实施身份验证之前,这很好。现在我得到一个 401,这是对摘要身份验证请求的初始响应。我已经搜索并遵循了一些与 http 基本身份验证相关的建议(使用参数 data = { #various stuff} 和 follow_redirects=True),但我没有成功。

有没有人知道在这种情况下如何实现单元测试?

0 投票
1 回答
1170 浏览

python - 启用身份验证后,Flask-restful 应用程序失败

每当我尝试使用 flask_httpauth 为我的 flask_restful 项目启用身份验证时,我都会收到此错误:

这是一个非常基本的示例:apicontroller.py:

初始化.py:

每当我用 装饰控制器类时@auth.login_required,它都会因上述错误而失败。我怎样才能解决这个问题?

0 投票
3 回答
1144 浏览

python - 检查 Flask-HTTPAuth 是否在视图内通过身份验证

我正在使用 Flask-HTTPAuth 进行身份验证。我想根据请求是否经过身份验证从视图中显示不同的数据。装饰视图auth.login_required仅向经过身份验证的用户显示。如何测试请求是否已使用 Flask-HTTPAuth 进行身份验证?

0 投票
1 回答
914 浏览

heroku - AttributeError: 'function' 对象没有属性 'verify_password'

我正在尝试合并基本身份验证,如此链接所示

https://github.com/miguelgrinberg/Flask-HTTPAuth/blob/master/examples/basic_auth.py

在我的烧瓶应用程序中。该应用程序部署在 Heroku 上。我不断收到的错误是

下面是我的代码

下面是回溯

我的 requirements.txt 文件包含以下内容

有人可以帮我找出问题所在吗?我有 GitHub 示例中建议的所有正确导入,并且在我的 requirements.txt 文件中也正确提到了它们。提前致谢。

0 投票
2 回答
260 浏览

python - Python / Flask - 将 flask_restless 与 flask_httpauth 一起使用

我在这个问题上的目标是保护我的 API。

在我的应用程序中,我使用 Flask 和flask_restless'sAPIManager为我的Person对象提供 CRUD API。

代码示例:

并且还flask_httpauth用来保护我的其他路线,如下所示:

我不知道如何使用@auth.login_requiredapimanager来不让它响应匿名请求,我在文档中阅读了一些关于预处理器的内容,但也找不到将它与@auth.login_required装饰器一起使用的方法。

任何帮助将不胜感激。