首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring abac与集中式数据库

spring abac与集中式数据库
EN

Stack Overflow用户
提问于 2020-03-22 18:03:06
回答 1查看 91关注 0票数 0

我需要有ABAC为我的庞大的用户基础,我想保存ABAC的细节在数据库中,如mongodb。

我浏览了这些1 2的详细信息,但这些链接讲述了如何在属性文件中制定规则并使用spring pre authorize进行验证。

是否可以将这些ABC规则存储在数据库中,并在调用微服务之前在集中授权服务器中使用它们。

EN

回答 1

Stack Overflow用户

发布于 2020-03-24 09:22:43

假设您使用的是Spring Security的最新版本,那么这里有several ways to handle authorization with that framework。我知道的一种方法是实现一个定制的AccessDecisionVoter,或者,如果一个AccessDecisionVoter不足以满足您的需求,那么实现一个定制的(虽然更复杂) AbstractAccessDecisionManager。您可以找到一个很好的教程,了解如何在Tim te Beek's blog上实现、配置和启用您自己的AccessDecisionVoter。然后,在AccessDecisionVoter的投票中(...)方法时,您可以使用授权请求调用外部授权服务器,并获得允许/拒绝响应。

有一个国际(OASIS)标准,它为这种ABAC授权请求/响应以及策略/规则定义了语法/格式和语义:XACML。XACML还有一个REST Profile,它为基于XACML的授权服务器定义了HTTP/REST API;还有一个JSON Profile,它为请求/响应定义了JSON格式,作为XML的替代。因此,XACML定义了一种将授权外部化到授权服务器的标准方法。

这些符合XACML的服务器中的一些可以在数据库中存储ABAC (XACML)策略/规则,例如具有Policy Provider plugin such as the MongoDB policy providerAuthzForce RESTful PDP

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

https://stackoverflow.com/questions/60797971

复制
相关文章

相似问题

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