SuperMap iServer 扩展账户信息合规度校验规则

SuperMapiServer11i(2023)新增了自定义用户名和密码合规度校验规则功能,允许通过配置文件accountInfoComplianceRules.xml中的passwordRules和usernameRules节点来设定和扩展规则。配置涉及正则表达式、字典和字符串匹配等校验方式,包括规则名、表达式、错误提示信息等详细设置。用户可以根据需求修改、删除现有规则或添加新规则,例如添加不允许键盘竖排连续字符的密码规则。

作者:lisong


功能简介

SuperMap iServer 11i(2023) 新增了扩展账户信息合规度校验规则的能力,您可以灵活定制满足自身项目需求的用户名、密码合规度校验规则,用于校验您创建的账户信息是否合规。

配置文件详情

在产品包根目录 %SuperMap iServer_HOME%/webapps/iserver/WEB-INF/config 下,accountInfoComplianceRules.xml 文件中内置了 SuperMap iServer 当前已经支持的账户信息合规度校验规则。
配置文件根节点为元素,包括以下两个子节点:
(1)passwordRules 节点
为用于配置密码合规度校验规则的集合,可以包含多个 rule 标签。每个 rule 标签对应一种密码合规度校验规则,包含合规度规则的校验方式(type)、规则名(name)、规则表达式(expression)、中文报错信息(zhErrMsg)以及英文报错信息(enErrMsg)等配置项。
passwordRules节点示例如下所示:

<passwordRules>
        <rule>
            <type>regularExpression</type>
            <name>PwdLength</name>
            <expression><![CDATA[\S{8,}]]></expression>
            <zhErrMsg>密码长度至少为8字符</zhErrMsg>
            <enErrMsg>Password must contain at least 8 characters</enErrMsg>
        </rule>
        <rule>
            <type>dictionary</type>
            <name>NotContainsContinuationCharacter</name>
            <expression>
                <condition>notcontainscontinuouschars,3</condition>
                <dictionary>abcdefghijklmnopqrstuvwxyz</dictionary>
                <dictionary>ABCDEFGHIJKLMNOPQRSTUVWXYZ</dictionary>
                <dictionary>0123456789</dictionary>
            </expression>
            <zhErrMsg>密码不能包含三个或三个以上连续字符</zhErrMsg>
            <enErrMsg>Password can’t contain three or more continuous characters and numbers</enErrMsg>
        </rule>
        <rule>
            <type>StringMatch</type>
            <name>notContainsUsernameAndReverse</name>
            <expression>
                <condition>notcontainsextraparamsandreverse</condition>
                <paramContent>${username}</paramContent>
            </expression>
            <zhErrMsg>密码不能包含用户名及其倒写</zhErrMsg>
            <enErrMsg>Pasword can't contain the user name and its reverse</enErrMsg>
        </rule>
</passwordRules>

其中,
● type:用于设置校验合规度规则的方式,包括正则表达式(regularExpression)、字典(dictionary)和字符串匹配(StringMatch)等三种类型。
● name:用于设置合规度规则的规则名。
● expression:用于设置合规度规则的表达式。当 type 为正则表达式(regularExpression)时设置描述合规度规则的正则表达式,并且没有子节点;为字典(dictionary)和字符串匹配(StringMatch)时,包括如下子节点:
● condition :用于设置合规度规则的匹配条件。当 type 为字典(dictionary)时,需根据规则设置与字典的关联条件及与字典关联的字符个数,用“,”连接(例如:notcontainscontinuouschars,3);当 type 为字符串匹配(StringMatch)时,需根据规则设置与字符串的关联条件,如:notcontainsextraparamsandreverse。
请注意,在配置文件内置的规则中,${username} 指用户设置的用户名字符,该配置仅能作为整体使用或替换。
● zhErrMsg :用于设置校验合规度规则时失败时的中文提示信息。
● enErrMsg:用于设置校验合规度规则时失败时的英文提示信息。
(2)usernameRules 节点
为用于配置用户名合规度校验规则的集合,可以包含多个 rule 标签。每个 rule 标签对应一种用户名合规度校验规则,包含合规度规则的校验方式(type)、规则名(name)、规则表达式(expression)、中文报错信息(zhErrMsg)以及英文报错信息(enErrMsg)等配置项。
usernameRules 节点配置方法同 passwordRules 节点,示例如下所示:

<usernameRules>
        <rule>
            <type>regularExpression</type>
            <name>UsernameLength</name>
            <expression><![CDATA[^[a-zA-Z][a-zA-Z0-9_-]{3,17}$]]></expression>
            <zhErrMsg>用户名必须是数字、字母、下划线或中划线组成,且以字母开头</zhErrMsg>
            <enErrMsg>User name must be composed of numbers, letters, underscores or dash, and begin with a letter.</enErrMsg>
        </rule>
</usernameRules>

扩展和配置流程

在实际项目中,您可以根据需求对 SuperMap iServer 中已经提供的账户信息合规度校验规则进行修改或者删除,也可以添加新的账户信息合规度校验规则进行扩展。 支持扩展的规则包括用户名和密码的位数和字符组成限制,可以使用的校验规则方式及关联条件请参考:passwordRules 节点
(1)配置文件设置
产品包根目录 %SuperMap iServer_HOME%webapps/iserver/WEB-INF/config 下,accountInfoComplianceRules.xml 文件的子节点 passwordRules 中添加如下内容:
(由于此规则包含多个字符,且无法使用正则表达式进行表述,以此使用字典方式进行校验)

<rule>
    <type>dictionary</type>
    <name>NotContainsKeyboardVerticalContinuationCharacter</name>
    <expression>
		<condition>notcontainscontinuouschars,2</condition>
        <dictionary>1qaz</dictionary>
        <dictionary>2wsx</dictionary>
        <dictionary>3edc</dictionary>
        <dictionary>4rfv</dictionary>
        <dictionary>5tgb</dictionary>
        <dictionary>6yhn</dictionary>
        <dictionary>7ujm</dictionary>
        <dictionary>8ik,</dictionary>
        <dictionary>9ol.</dictionary>
        <dictionary>0p;/</dictionary>
    </expression>
    <zhErrMsg>根据键盘阵列,密码不能包含两个或两个以上竖排连续的字符</zhErrMsg>
    <enErrMsg>Password can’t contain two or more continuous vertical characters on the keyboard</enErrMsg>
</rule>

在这里插入图片描述
(2)查看扩展结果
完成上述配置后,表示已经成功添加了密码合规度校验规则“密码不能包含两个或两个以上竖排连续的字符”。保存配置文件并重启 SuperMap iServer,在初始化向导-创建管理员账户、用户管理-添加用户、账户设置-修改密码和强制修改密码等功能中设置密码,即可对输入的密码进行该项合规度规则校验。
在这里插入图片描述

注:若对管理员账户密码进行重置,需在重启 SuperMap iServer 前,停止 SuperMap iServer 服务,并执行【SuperMap iServer_HOME】\bin目录下的 passwordreset.bat/passwordreset.sh 文件。

内容概要:本文设计了一种基于PLC的全自动洗衣机控制系统内容概要:本文设计了一种,采用三菱FX基于PLC的全自动洗衣机控制系统,采用3U-32MT型PLC作为三菱FX3U核心控制器,替代传统继-32MT电器控制方式,提升了型PLC作为系统的稳定性与自动化核心控制器,替代水平。系统具备传统继电器控制方式高/低水,实现洗衣机工作位选择、柔和过程的自动化控制/标准洗衣模式切换。系统具备高、暂停加衣、低水位选择、手动脱水及和柔和、标准两种蜂鸣提示等功能洗衣模式,支持,通过GX Works2软件编写梯形图程序,实现进洗衣过程中暂停添加水、洗涤、排水衣物,并增加了手动脱水功能和、脱水等工序蜂鸣器提示的自动循环控制功能,提升了使用的,并引入MCGS组便捷性与灵活性态软件实现人机交互界面监控。控制系统通过GX。硬件设计包括 Works2软件进行主电路、PLC接梯形图编程线与关键元,完成了启动、进水器件选型,软件、正反转洗涤部分完成I/O分配、排水、脱、逻辑流程规划水等工序的逻辑及各功能模块梯设计,并实现了大形图编程。循环与小循环的嵌; 适合人群:自动化套控制流程。此外、电气工程及相关,还利用MCGS组态软件构建专业本科学生,具备PL了人机交互C基础知识和梯界面,实现对洗衣机形图编程能力的运行状态的监控与操作。整体设计涵盖了初级工程技术人员。硬件选型、; 使用场景及目标:I/O分配、电路接线、程序逻辑设计及组①掌握PLC在态监控等多个方面家电自动化控制中的应用方法;②学习,体现了PLC在工业自动化控制中的高效全自动洗衣机控制系统的性与可靠性。;软硬件设计流程 适合人群:电气;③实践工程、自动化及相关MCGS组态软件与PLC的专业的本科生、初级通信与联调工程技术人员以及从事;④完成PLC控制系统开发毕业设计或工业的学习者;具备控制类项目开发参考一定PLC基础知识。; 阅读和梯形图建议:建议结合三菱编程能力的人员GX Works2仿真更为适宜。; 使用场景及目标:①应用于环境与MCGS组态平台进行程序高校毕业设计或调试与运行验证课程项目,帮助学生掌握PLC控制系统的设计,重点关注I/O分配逻辑、梯形图与实现方法;②为工业自动化领域互锁机制及循环控制结构的设计中类似家电控制系统的开发提供参考方案;③思路,深入理解PL通过实际案例理解C在实际工程项目PLC在电机中的应用全过程。控制、时间循环、互锁保护、手动干预等方面的应用逻辑。; 阅读建议:建议结合三菱GX Works2编程软件和MCGS组态软件同步实践,重点理解梯形图程序中各环节的时序逻辑与互锁机制,关注I/O分配与硬件接线的对应关系,并尝试在仿真环境中调试程序以加深对全自动洗衣机控制流程的理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值