[英]Restrict User Id/Username in ITIM to not start from a given character
我想限制用户创建帐户,使他们不能创建以某些字符开头的帐户。 例如,如果我说R
,那么用户应该不能创建诸如Rtest1
或Rrest123
类的帐户,而可以创建诸如testR1
类的testR1
。 我可以在哪里申请这张支票? 我检查了帐户表单设计表单中的invalid character
约束,但这不允许我在用户名中的任何位置指定该字符,例如,如果我给R
那么它也将不允许testR1
。 我需要使用一些策略或自定义javascript的ITIM中的String.StartsWith()
类的东西。 注意:-我无法为此使用工作流程。
因此,我使用供应策略找到了解决方案,我将该解决方案发布给其他人作为参考。 在PP中为您要应用此检查的服务创建权利。 完成后,选择该权利,然后单击parameters
以为此权利创建参数实施。 选择要强制执行此检查的属性(对我来说这是eruid),将强制类型选择为必需,然后选择javascript选项。 输入以下脚本:-
var accountId = parameters.eruid[0]; //gets the eruid
//check if account start with Q
if (accountId != null && accountId.length > 0 && (accountId.toLowerCase().substr(0, 1)=='q')) {
return accountId.substr(1,accountId.length-1) //remove the q from beginning and return the new id as a suggestion to user
}
return accountId; //or else return the same id
这会阻止以q开头的用户请求,并且不允许您提交添加帐户请求。 请参阅以下标题:-
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.