问题标签 [flask-oidc]
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.
python - 为什么我使用 Okta+oidc 得到“'OpenIDConnect' 对象没有属性 'extra_data_serializer'”?
我尝试将 Okta 与flask-oidc集成到我的 Flask 应用程序中。示例应用程序适用于我的. client_secrets.json
,但是当我将它集成到我的(更大)应用程序中时,我收到以下错误:
有趣的是,当我尝试访问受保护的视图时,我只会收到此错误@oidc.require_login
。当我第一次登录然后访问受保护的视图时,它工作正常。我会期待重定向(flask-oidc 代码),就像它发生在非蓝图视图中一样。
如何使蓝图直接与 flask-oidc 一起使用?
unit-testing - 如何从视图中删除“@oidc.login_required”以进行单元测试?
我使用flask-oidc进行用户登录和pytest进行测试。对于单元测试,我想“删除” @oidc.require_login
。我怎样才能做到这一点?
我试过的
flask-o 的工作方式大致是:
然后我希望单元测试可以模拟@oidc.require_login
离开:
python - 无法使用 keycloak 保护 python flask rest api 服务
我有在 docker (192.168.99.100:8080) 中运行的 keycloak 服务器和在本地运行的 python flask-oidc flask 应用程序 (localhost:5000) 我即使在获取 access_token 后也无法访问受保护的 Rest Api。有没有人试过这个代码。如果是这样,请帮助我解决这个问题。谢谢你
这是我使用 docker jboss/keycloak 映像的 keycloak 客户端
下面是我的烧瓶应用程序
应用程序.py
client_secrets.json
当我在网络浏览器中启动烧瓶应用程序时,
我单击下一步的登录链接
,它会提示输入用户详细信息(在我的新领域下创建的用户)
,这需要几秒钟,然后将我重定向到错误页面
http:// localhost:5000/oidc_callback?state=eyJjc3JmX3Rva2VuIjogIkZZbEpqb3ZHblZoUkhEbmJsdXhEVW
说
httplib2.socks.HTTPError
httplib2.socks.HTTPError: (504, b'Gateway Timeout')
并且它正在重定向到 /oidc_callback 任何地方都没有提到
任何帮助将不胜感激
flask - 如何设置 OpenID 以使用负载均衡器?
我目前使用的堆栈是: Keycloak flask flask-oidc nginx as load balancer
我的设置是我有两个正在运行的服务实例(instance1,instance2)。我面临的问题是:
instance1 处理此请求并将用户重定向到 Keycloak 进行身份验证
Keycloak 使用重定向 url ( https://mycompany.com/auth/auth_callback )将用户重定向回应用程序
这次负载均衡器将请求路由到重定向 url 到 instance2。这里 instance2 出错,Keycloak 的响应是“{'error': 'invalid_grant', 'description': 'Incorrect redirect uri'}”,这非常令人困惑,因为重定向 uri 是正确的。
我不完全确定为什么这个设置不起作用。但是在阅读了 openID 的工作原理之后,我有点怀疑它与 state 参数(https://auth0.com/docs/protocols/oauth2/oauth-state)有关。同样,我不完全确定。但它必须是 instance1 本地的东西,而 instance2 没有。
人们如何解决这个问题?这种设置甚至可能吗?
python - Python Flask Oidc + Keycloak 获取组、属性
我正在使用下面的这个例子来连接烧瓶 + 钥匙斗篷。工作正常,但我需要获取有关此用户的一些信息,例如组、属性 在 flask_oid 文档中搜索,我找不到任何关于如何获取它的想法。我需要它在登录后过滤是否是管理员,以根据您的个人资料创建菜单。
应用程序.py
client_secrests.json
有些可以帮助我。谢谢
nginx - flask oidc auth 回调重定向到 http 而不是 https
这是我第一次尝试部署一个 plotly dash python web 应用程序。我按照以下教程开始
该应用程序在 ec2 实例上运行良好,nginx 和 gunicorn 都在 docker 容器中。重定向到 okta 进行身份验证并返回工作正常(使用 ec2 实例公共 ip)
在通过 aws 负载均衡器 (HTTPS) 为域名设置重定向后,它开始失败并抱怨404,因为返回的 url 方案是http而不是https。
首先,我添加OVERWRITE_REDIRECT_URI
了带有https的配置,它修复了 okta 端不正确的重定向 uri 问题
然后尝试ProxyFix
以下 SO 帖子中的所有选项,但在重定向到/authorization-code/callback?code=<long code value>后,响应总是以http:// <my_website_name>/<page>而不是https返回
我被困在这一点上,我在这里错过了什么?
谢谢
nginx conf.d/conf
keycloak - 尝试获取“openid_id”和“角色”字段时,带有 Keycloak 的 Flask OIDC 返回 None
我正在尝试使用 Flask-ODBC + Keycloak 构建一些测试应用程序。
我成功启动了 Keycloak,创建了一个领域、一个角色和一个分配给该角色的用户。现在我试图从 OpenIDConnect 对象中获取“角色”和“openid_id”字段,但这两个字段返回无。
我的应用程序代码如下
在 hello_me() 中,我尝试获取 'openid_id' 和 'role' 并打印出来。问题是我在这些领域没有得到任何东西。我可以正确收到电子邮件。
你能帮我找出我犯了什么错误吗?
python - 无法将 flask-oidc 与 Keycloak 公共客户端一起用于 API 调用
我正在尝试将 Flask 应用程序与使用两种端点装饰器的 Keycloak 公共连接:@oidc.require_login 和@oidc.accept_token
. 但是我遇到了以下问题。
对于 Keycloak 机密客户端,我可以访问 Flask 应用程序中的所有端点。这是我的应用程序配置:
以及我的(经过清理的)clients_secrets.json 的内容
对于公共Keycloak 客户端,我将 client_secrets.json 修改如下(只需将 client_secret 设置为空字符串:
但是,当我在公共 Keycloak 客户端下部署此 Flask 时,我仍然可以访问 @oidc.require_login 端点,但@oidc.accept_token
API 端点返回此错误:
使用 Keycloak 公共客户端是此 Flask 应用程序所在的微服务环境的要求。我不控制这个要求,其他微服务(用 Java、Angular 等编写)对这个 Keycloak 配置没有任何问题。
有没有办法使用装饰器使用带有flask-oidc端点的Keycloak公共客户端@oidc.accept_token
?在我看来,这是一个常见的 OIDC 场景。
我在 Python 3.8.6 上使用 Flask 1.0.2 flask-oidc 1.4.0 运行它
keycloak - 烧瓶-OIDC | 用户登录后如何调用特定函数
我使用 Flask OIDC 和 Keycloak 构建了一个登录系统。在我的系统中,有一些用 oidc.require_login() 修饰的端点调用 Keycloak 登录页面。
我的目标是,在用户成功登录后,我的系统会检查用户名是否存在于特定数据库中。
如何设置每次有人使用 Keycloak 成功登录并在数据库中进行验证时调用的函数?