我想使用策略机或下一代访问控制(NGAC)来实现ABAC访问控制模型,该模型提供了一个通用的统一框架,以通过其不同的组件(PEP,PDP,PAP,PIP)支持不同类型的基于属性的策略。我正在使用JAVA作为语言,并且正在寻找可以帮助我的文档或Github存储库。
最佳答案
如果您的主要要求是实施ABAC模型而不是专门使用
Policy Machine或NGAC,我可以将您指向开源ABAC引擎SAPL。
https://sapl.io
在该网站上,您可以找到完整的文档,并使用该引擎和各种主要基于Spring的Java演示应用程序链接到github存储库。 SAPL会实现您要查找的所有ABAC组件(PEP,PDP,PAP,PIP)。该引擎是可扩展的,您可以插入自定义域特定的PIP。您可以使用嵌入式PDP来提高性能,也可以使用远程PDP来进行集中管理。免责声明,我是引擎的首席开发人员。
直接链接到:
引擎:https://github.com/heutelbeck/sapl-policy-engine
示例代码:https://github.com/heutelbeck/sapl-demos
文档:https://sapl.io/sapl-reference.html