由于收购,我们有很多使用不同技术的模块。我们正在考虑一种集中应用程序安全控制实现的方法。在我看来有两个解决方案,但两者似乎都有一些缺陷: 选项1 创建一个独立的安全库。缺点是它不能用于不同的语言。我们至少需要提供不同语言的界面。
1选项 使用REST API创建安全服务。然后,任何技术都可以使用它。但它会带来额外的性能开销。
你有这方面的经验吗?
感谢。
答案 0 :(得分:0)
请考虑XACML作为选项:
XACML代表可扩展访问控制标记语言。该 standard定义了声明性访问控制策略语言 以XML实现,以及描述如何评估的处理模型 授权请求根据策略中定义的规则。
它可能适合您,因为它确实允许完全集中的访问控制。您只需要为每个特定模块实施PEP(策略执行点)。
XACML模型支持并鼓励分离 从使用角度的授权决定。授权时 决策被烘焙到客户端应用程序中,这是非常困难的 在管理政策发生变化时更新决策标准。 当客户端与授权决策分离时, 授权策略可以即时更新并影响所有 客户立即。