我想设计一些“中央认证和授权服务”,我知道已经有一对了。我担心的不是标准。在接下来的几行中,我将尝试解释它。
我创建了两个具有自己的身份验证和授权机制的 Django 客户端应用程序。这两个应用程序具有不同的设计,因此具有不同的权限和角色。但是用户是相同的。
现在我必须创建第三个应用程序,前两个应用程序必须通过它进行身份验证,这没问题(例如使用 OAuth)。但是第三个应用程序也负责授权,即角色、权限(包括许多对象级权限)由第三个应用程序存储和管理。
问题是:
我怎样才能实现第三个应用程序,以便它可以支持非特定的、自由式的权限?
如何存储这些权限?
我应该如何将权限转移到客户端应用程序?
我如何查询一些权限?
我应该将所有权限存储在第三个应用程序中并在每次用户请求某些资源时查询它们,还是应该将它们保存在本地并在某些时候更新它们?
我查看了OpenID Connect、SAML、XACML等。SAML 和 XACML 看起来很有前途,但我仍然感到困惑,上述问题仍未得到解答。
我知道这个问题涵盖的范围很广,但是拥有一些入门资源和一些示例项目会有很大帮助。
问候。
慕标5832272
相关分类