如何设计跨多个技术堆栈的应用程序安全体系结构



由于收购,我们有很多模块使用不同的技术。我们正在考虑一种集中应用程序安全控制实现的方法。我认为有两种解决方案,但似乎都有一些缺陷:选项1创建一个独立的安全库。缺点是它不能用于不同的语言。我们至少需要提供不同语言的接口。

选项2使用REST API创建安全服务。然后,任何技术都可以使用它。但它会带来额外的性能开销。

你对此有经验吗?

谢谢。

请将XACML视为一个选项:

XACML代表可扩展访问控制标记语言。这个标准定义了一种声明性访问控制策略语言用XML实现,以及描述如何评估的处理模型根据策略中定义的规则进行授权请求。

它可能适合您,因为它确实允许完全集中的访问控制。您只需要为每个特定模块实现一个PEP(策略执行点)。

XACML模型支持并鼓励从使用角度进行授权决策。授权时决策被烘焙到客户端应用程序中,这是非常困难的以在管理策略更改时更新决策标准。当客户端与授权决策解耦时,授权策略可以动态更新,并影响所有客户。

相关内容

最新更新