以下用例示例的最佳架构方法是什么:
据我所知,OAuth范围不适用于上述用例。 一种方法是将所有数据(包括权限)存储在关系数据库中,并且每次使用连接进行查询。 另一种方法是使用一些像LDAP这样的外部系统来存储实体之间的关系并管理它们的权限。实体本身仍存储在某个数据库中。
由于显而易见的原因,上述两种选择看起来都不太吸引人。在第一种情况下,您最终会有太多的连接。在第二种情况下,您可能很难跨两个系统管理数据完整性。而且,它违反了单一的事实原则。
用例必须是软件开发的典型用例,但我没有找到任何"最佳实践"这个用例的建议。 我将不胜感激任何有关外部资源的建议或参考。
答案 0 :(得分:1)
最佳做法是使用外部授权管理(EAM)。
外化授权管理提供了一种更精细的方式来管理组织内的访问。 (Gartner的)
EAM为您提供:
特别是,ABAC为您提供了一种体系结构,可以将要保护的层(应用程序,数据库中的数据......)与授权逻辑分离。这意味着您可以独立于授权改进您的应用程序,反之亦然。 XACML是ABAC的事实上的实施。
您的所有要求最终都被表达为政策。