验权相关常见问题验权相关常见问题
# 1. 复制附件的下载或预览链接,为什么用无权限的账号依然能下载?
首先检查mc参数`check.file.permission`是否开启,此参数为true才会开启附件验权。但此问题原因一般是这个附件不是从附件控件(附件字段或附件面板)上传的,苍穹不知道附件来自于哪一个单据,也就不知道要验哪一个单据的权限,因此不做验权。
# 2. 不是从附件控件(附件字段或附件面板)上传的附件,要如何实现验权(临时文件)
不是从附件字段或附件面板上传的附件,验权需要自行埋验权参数,示例如下:
请参考示例把验权参数放到缓存
```java
//临时文件埋验权参数
DistributeSessionlessCache redisCache =
CacheFactory.getCommonCacheFactory().getDistributeSessionlessCache("", new
DistributeCacheHAPolicy(true,true));
String url = (String) attach.get(ATT_URL);
String tempFileId = UrlUtil.getParam(url, "id");
Map<String, Object> refEntitiyMap = new HashMap<>(2);
refEntitiyMap.put("entityNum", attach.get(ENTITY_NUM).toString());
refEntitiyMap.put("appId", view.getFormShowParameter().getServiceAppId());//
refEntitiyMap.put("billPkId", view.getModel().getDataEntity().getPkValue());
//缓存验权所需参数
redisCache.put("TempFileCheckId:" + tempFileId,
SerializationUtils.toJsonString(refEntitiyMap),
2 * 60 * 60);
```
# 3. 不是从附件控件(附件字段或附件面板)上传的附件,要如何实现验权(持久化文件)
不是从附件字段或附件面板上传的附件,验权需要自行埋验权参数,示例如下:
请参考示例把调用如下方法,把映射关系写入表中
```java
//持久化文件埋验权参数
kd.bos.attachment.util.BillFileMappingWriter#syncWriteFileBillMapping(java.util.List<kd.bos.mservice.attachment.AttachmentInfo>)
```
验权相关常见问题验权相关常见问题
# 1. 复制附件的下载或预览链接,为什么用无权限的账号依然能下载?首先检查mc参数`check.file.permission`是否开启,此参数为true才会开...
点击下载文档
上一篇:预警平台进阶场景介绍下一篇:新版云盘部署方法
本文2024-09-23 00:37:33发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-140676.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章