代码之家  ›  专栏  ›  技术社区  ›  buff

在缓存中存储全局令牌

  •  1
  • buff  · 技术社区  · 7 年前

    我有一个模块 AuthorizationServiceEventHandler Checking Complete 事件我正在向外部API发送请求,该API为我提供了一些 说明书 比如应该向用户启用/显示哪些模块。

    我想遵循的方法是将这些指令存储在缓存中的某个位置,然后每当 暴露的服务模块 应用户的请求(通过控制器),模块将使用 CacheManager .
    由回答的标准权限问题 ViRuSTriNiTy 指令或权限可能会因其他权限的不同而变化(例如,如果授予权限A,则也会授予权限C),并且此指令由外部API决定,并且将一直更改。

    我花了几天的时间试图找到一个合适的方法来实现这一目标。

    这说明了我的模块将要做什么。 ViRuSTriNiTy

    所以API不会具体给出 module 1 module 3 如果启用,它只会给您指示。 房屋 应替换为 医院

    编辑1: 我所说的房子应该是hopistal,在图片中,Api用hopistal而不是house来响应,我只是把它搞砸了。

    编辑2: 我想要实现的是一个模块,它控制哪些模块应该对特定用户可用,每个用户都有不同的特性,API将检查这些特性并决定哪些值将返回给模块,然后模块将根据这些说明确定哪些模块将对用户可用。

    例如,没有 房屋 不会使用 House module 与权限一样,模块将返回一个未经授权的httpcode,并显示一条样式化消息:You have no house。

    1 回复  |  直到 7 年前
        1
  •  0
  •   ViRuSTriNiTy    7 年前

    我认为您需要首先定义一些权限。

    例子:

    模块中的权限A House : CanAccess

    模块中的权限B Children : CanAccess公司

    现在,在处理程序中,您可以从权限中获取模块,然后要求API返回适当的值。

    准许 House.CanAccess &燃气轮机;单元 房屋 -&燃气轮机;ExternalAPI。CanAccess公司( 房屋 )->根据需要从处理程序返回