我在AuthorizationServiceEventHandler
Checking
或Complete
事件中有一个模块,我向外部API发送请求,这给了我一些指令比如应该为用户启用/显示哪些模块。
我想要遵循的appraoch是将这些指令存储在缓存中的某个地方,然后每当用户请求服务模块Exposed (通过控制器)时,模块将使用CacheManager
。
由ViRuSTriNiTy回答的标准权限的问题是指令或权限可能会根据其他权限而变化(如果授予权限A,也授予权限C),并且此指令由外部决定API将一直在变化。
我试图找到适当的方法或方法来实现这一目标。
因此,API不会明确指出module 1
和module 3
应该启用,它只会为您提供说明。
住宅应替换为医院
编辑1: 我所说的房子应该是图片中的Hopistal Api用Hopistal而不是房子回应我只是搞砸了。
编辑2: 我想要实现的是一个模块,它控制特定用户应该使用哪些模块,每个用户都有不同的特性,API将检查并决定将哪些值返回给模块,然后模块将根据这些指令将确定哪些模块可供用户使用。
例如,没有 house 的用户将不会使用House module
类似的权限,模块将返回带有样式消息的未授权的httpcode:您没有房子。
答案 0 :(得分:0)
我认为您需要先定义一些权限。
示例:
模块House
中的权限A:CanAccess
模块Children
中的权限B:CanAccess
现在在您的处理程序中,您可以从权限中获取模块,然后要求API返回适当的值。
权限House.CanAccess
>模块House
- > ExternalAPI.CanAccess(House
) - >根据需要从处理程序返回