12
发帖
楼主: mikingwang

表单修改权限问题

升级   5.33%

4

主题

14

回帖

58

积分

注册会员

Rank: 2

积分
58
发表于 2021-7-23 14:58:19 | 显示全部楼层
是的,直接微信同步的。企业微信里面的唯一值是可以自己设置一次的,好多帐号都设置成了邮箱。
如果这个流程应用设置了管理员才会,没有设置应用管理员不会。
比如流程应用设置了管理员A,A的唯一unique =  a@o2oa.net
B申请流程应用里面的申请提交再查看该流程,就会把B也判断称管理员。b的unique = b@o2oa.net,distinguishedName = B@b@o2oa.net@P
我跟踪是走到business.canManageApplicationOrProcess的effectivePerson.isPerson(application.getControllerList())
这里验证isPerson时,正则匹配导致的。
写个main就测试出来了呀。
effectivePerson中,B@b@o2oa.net@P解析出来name=B@b,unique=o2oa.net
因所有帐号解析出来都是o2oa.net,与管理员的名字contains永远都是真。
回复

使用道具 举报

升级   100%

138

主题

1万

回帖

3万

积分

超级版主

Rank: 8Rank: 8

积分
37555
发表于 2021-7-23 15:21:03 | 显示全部楼层
您好:确实存在您说的问题。
会提交到技术部门,不过个人估计最终可能解决方案是唯一编码不能含有@

具体解决方式有技术部门定夺。技术部门会根据轻重缓急是否必要处理问题!
回复

使用道具 举报

升级   5.33%

4

主题

14

回帖

58

积分

注册会员

Rank: 2

积分
58
发表于 2021-7-28 16:44:43 | 显示全部楼层
是啊,貌似不着急。
@可以用,就是要改下正则怎么匹配到第一个@和最后一个@之间的,我对正则也是一知半解,没试出来。
回复

使用道具 举报

Ray

升级   100%

31

主题

204

回帖

871

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
871
发表于 2021-7-28 21:18:17 | 显示全部楼层
public final static Pattern person_distinguishedName_pattern = Pattern.compile("^(.+)\\@(\\S+)\\@P$");
(.+)其中+号表示贪婪,考虑的是用户如果使用邮箱地址作为自己的用户名.
去掉+可以匹配到前面短的@但是用户就无法用邮箱作为自己的用户名.
建议使用不包含@的字符串作为unique,如果一定要在unqiue中使用@可以自行修改
com.x.base.core.project.organization.OrganizationDefinition中的正则表达式,
考虑到有用户使用邮箱作为用户名,所以不会在后续版本中修改这里的判断逻辑.
回复

使用道具 举报

升级   100%

138

主题

1万

回帖

3万

积分

超级版主

Rank: 8Rank: 8

积分
37555
发表于 2021-7-29 09:52:00 | 显示全部楼层
public final static Pattern person_distinguishedName_pattern = Pattern.compile("^(.+)\\@(\\S+)\\@P$");
(.+)其中+号表示贪婪,考虑的是用户如果使用邮箱地址作为自己的用户名.
去掉+可以匹配到前面短的@但是用户就无法用邮箱作为自己的用户名.
建议使用不包含@的字符串作为unique,如果一定要在unqiue中使用@可以自行修改
com.x.base.core.project.organization.OrganizationDefinition中的正则表达式,
考虑到有用户使用邮箱作为用户名,所以不会在后续版本中修改这里的判断逻辑.
回复

使用道具 举报

12
发帖

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表
viewthread