• 首页
  • 产品中心
    • 数式Oinone四大产品

      低代码开发平台无代码开发平台集成开发平台AI大模型开发
    • 数式Oinone体系能力

      用户与组织权限管理文件管理消息中心国际化业务审计
    • 数式Oinone核心产品特性

      低无一体面向软件公司场景无限制应用级扩容可分可合
  • 服务中心
    • 客户服务

      预约演示方案咨询私有部署找人定制
    • 开发者

      问答下载
    • Oinone学院

      社区学习

    《精讲面向软件公司的低代码平台——以Oinone为例》

  • 合作伙伴
    渠道申请伙伴名录专家库
  • 关于数式
0571-88757863

权限扩展:函数如何跳过权限拦截


一、跳过登录直接调用接口

(一)示例:

  • 跳过 queryTea 的权限验证
@Action(displayName = "queryTea", bindingType = ViewTypeEnum.FORM)
@Action.Advanced(type = FunctionTypeEnum.UPDATE)
public Teacher queryTea(Teacher data) {
}
  • 在 yaml 文件里面配置上该函数的 namespace(模型编码)以及函数名字
pamirs:
  auth:
    fun-filter:
      - namespace: user.PamirsUserTransient
        fun: login #登录
      - namespace: top.Teacher
        fun: queryTea

二、不跳过登录直接调用接口

(一)示例:

  • 在 yaml 文件里面配置上该函数的 namespace(模型编码)以及函数名字
pamirs:
  auth:
    fun-filter-only-login: #登录后不再校验该函数的权限
      - namespace: top.Teacher
        fun: queryTea

三、按包设置权限过滤

  • 如何批量跳过权限验证?以上两种方式提供了在 yml 文件里面配置权限过滤的方式,但如果需要大量过滤权限,配置就变得很繁琐,所以下面主要介绍通过代码扩展的方式去控制权限。

(一)示例:

  • 以下示例通过控制包路径来跳过权限。
  • 继承pro.shushi.pamirs.auth.api.spi.AuthFilterService接口
@Order(88)
@Component
public class CustomAuthFilterService implements AuthFilterService {

    public static final String skipClass = "pro.shushi.pamirs.top.core.action";

    @Override
    public Boolean isAccessAction(String model, String name) {
        //从缓存中取函数
        Action cacheAction = PamirsSession.getContext().getExtendCache(ActionCacheApi.class).get(model, name);
        if (cacheAction instanceof ServerAction) {
            ServerAction serverAction = (ServerAction) cacheAction;
            Function function = PamirsSession.getContext().getFunction(serverAction.getModel(), serverAction.getFun());
            String clazz = function.getClazz();
            //返回true就代表通过验证
            if (clazz != null && clazz.startsWith(skipClass)) {
                return true;
            }
        }
        return null;
    }
}

请求pro.shushi.pamirs.top.core.action路径下的动作可以通过验证。

编辑此页
最近更新:2026/1/15 04:02
上一页
文件存储:OSS(CDN)配置和文件系统的一些操作
下一页
权限扩展:如何删除系统权限中默认的首页节点
默认页脚
Copyright © 2026 Mr.Hope