首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在金字塔中使用外部Auth系统

如何在金字塔中使用外部Auth系统
EN

Stack Overflow用户
提问于 2015-03-30 08:38:26
回答 1查看 203关注 0票数 1

上下文

我的应用程序依赖外部服务进行身份验证,python具有函数authentiate_request,它将request实例作为param,并返回结果dict:

  • 如果auth成功,dict包含3个键:
代码语言:javascript
运行
复制
- successful: true
- username: alice
- cookies: [list of set-cookie headers required to remember user]

  • 如果不成功:
代码语言:javascript
运行
复制
- successful: false
- redirect: url where to redirect user for web based auth

现在,对这个函数的调用比较昂贵(下面是HTTP )。

问题

我刚接触过金字塔安全模型,我很难使用现有的/正确地为我的应用程序编写AuthenticationPolicy,所以它使用我的auth服务,并且不会在每次会话中调用它的API一次以上(在auth成功场景中)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-28 00:26:10

有两种广泛的方法可以将定制的auth与金字塔集成:-为金字塔编写您自己的身份验证策略(我还没有这样做)-编写您自己的中间件来处理您的auth问题,并在金字塔中使用RemoteUserAuthenticationPolicy (我已经这样做了)。

第二步,编写一些标准的wsgi中间件,在其中整理您的自定义身份验证业务,然后写入wsgi。然后金字塔授权就可以正常工作了,金字塔系统将从wsgi的“REMOTE_USER”设置中获得用户值。

我个人喜欢这种方法,因为在您的中间件中包装不同的应用程序很容易,关闭或交换它非常简单。虽然这并不是你真正想要的答案,但这可能是一个比你正在尝试的更好的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29341688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档