[AB] AB PLC︱Studio 5000新的加密方式

[复制链接]
查看22447 | 回复0 | 2024-5-10 14:23:08 | 显示全部楼层 |阅读模式


前言:对于基于AB LOGIX5000控制器开发的项目,若要进行知识产权保护,可采取两种方式:一是加密程序源代码,二是加密控制器。针对加密程序源代码,目前,RSLogxi/Stduio 5000所有版本均使用工具Configure Source Protection进行加密;针对加密控制器,RSLogix 5000 v20以前版本,使用Logix CPU Security Tool操作,而RSLogix 5000 v20至Stduio 5000 v32版本,则采用新的加密方式,本文所讨论的正是这种新的加密方式。
01新的加密方式

1. 从RSLogix5000 v20 版开始,针对控制器加密,以前使用Logix CPU Security Tool加密方式不再有效, RSLogix5000软件将安全功能扩展升级,交给FactoryTalk Administration Console 软件控制.



2. 安装软件时,FactoryTalk Administration Console 是随着FactoryTalk Services Platform 一起自动安装的,本文使用的版本是3.00.00(CPR 9 SR10)。另外,说明一下,其如同编程软件Studio 5000一样,低版本无法还原高版配置.



02本文测试环境

1. 编程软件Studio 5000 v30,安全配置软件FactoryTalk Administration Console v3.00.00

2. 虚拟机环境:VirtualBox6.0,Win7 旗舰版 SP1 64位,将在该环境进行Studio 5000 v30加密操作.



3. 实体机环境:Win10 企业版 64位,本文将在该环境进行Studio 5000 v30加密验证操作.



03定义加密环境
1. 从开始菜单打开FactoryTalk Administration Console,选择Network,点OK进入软件。从File看到,此时登录的用户默认是windows管理员,这是AB所有软件操作的初始环境.


2. 什么是初始环境,即默认所有用户都能使用,这很重要,所以,务必备份该环境,以防止修改环境后,无法使用各种AB软件。备份步骤,详见下图,需要注意的地方,全部选项默认即可,是否输入密码,自己决定,建议默认为空,否则你得记住设置的密码,要不然无法还原初始环境。本文备份初始环境,得到文件:Network-D2D0391F-6B92-432B-A4AD-5235DCFECECC.bak,该文件是基于当前系统、用户及其权限、时间戳等生成的备份文件,是唯一的.


3. 备份初始环境后,就可以定义加密环境了,比如修改程序、上传程序的权限等。所谓的定义环境,其实就是修改用户以及其权限。为了拥有最高的权限,需要新建一个FactoryTalk用户,本文为rsadmin,设置密码,且密码不过期,详细步序如下图.


4. 用户建好以后,需要将其定义为管理员,将其添加到管理员组内即可,步序如下.


5. 为保证该用户拥有最高的、唯一的权限,需要将其他管理员组及其成员全部删除,操作如下.


6. 接下来,仍是定义rsadmin的安全权限,为保证它为当前加密环境的唯一且最高权限等级,所有需要将其他用户删除。首先,删除拥有本机安全权限的All Users.


7. 其次,删除拥有策略安全权限的All Users


8. 最后,删除拥有产品策略安全权限里的All Users


9. 开启SSO(Single Sign-on)功能,依次打开文件夹Policies--System Policies,找到Security Policy,并双击打开,在弹出的对话框,找到SingleSign-OnPolicySettings,确认其为Enabled,该功能启用后,以后打开所有受FactoryTalk Security管理的软件(如RSLogix/Studio 5000等),包括FactoryTalk Administration Console在内,都会弹出登录窗口,输入正确的用户名和密码登录后,才能打开该软件.


04STUDIO 5000加密设置
1. 在定义完加密环境后,接着进行RSLogix/Studio 5000加密设置,包括删除、执行、读操作、写操作等,管理员组默认全部允许Allow,可以通过勾选Deny设置为拒绝.


2. 具体设置RSLogix/Studio 5000的新建程序、查看程序、上传程序、工具栏的使用等等权限,双击打开RSLogix 5000目录下的Feature Security,在弹出的对话框即可进行各种设置.



3. 配置新建项目权限,如下图,点击配置权限,删除All Users组


4. 配置打印权限,如下图,点击配置权限,删除All Users组


5. 配置控制器权限,如下图,点击配置权限,添加Administrators管理员组,由于rsadmin在该组,所以其拥有了对控制器操作的最高权限.


6. 配置工具条权限,如下图,点击配置权限,删除All Users组


7. 配置固件升级权限,如下图,点击配置权限,删除All Users组


8. 配置开发工作区权限,如下图,点击配置权限,删除All Users组


05生成加密环境文件

1. 点击配置软件的菜单栏Tools--FactoryTalk Security Authority Identifier,生成了以上配置的RSLogix 5000加密环境,其ID为:763B5450-F29D-4906-ACA2-823178A59DDB,详细步序见下图.


2. 接着上面的操作,点击Backup,进行该加密环境的备份,根据自己情况决定是否设置密码,详细操作如下,最后生成了:Network-763B5450-F29D-4906-ACA2-823178A59DDB.bak文件.


06基于控制器名称的加密

1. 在虚拟机中,打开Studio 5000 v30,新建一个项目TestSec,点击下一步,加密设置如红色方框标识处,选中Logical Name<Controller Name>.



2. 编写一段测试程序并保存,点开CPU属性,查看其加密设置已经变成第1步设置的一样,基于控制器名称加密,另外,该程序的控制器名称同项目名称,为TestSec.


3. 将程序TestSec.ACD拷贝到实体机,双击打开,提示该程序由拥有ID{763B5450-F29D-4906-ACA2-823178A59DDB}的操作系统开发,无法打开.


4. 如何在实体机中将加密的程序打开呢?方法是:将在虚拟机加密环境生成的备份文件,在实体机中用FactoryTalk Administration Console将其还原,这样实体机就拥有了相同的加密环境,就能打开加密程序了。还原步骤,将加密环境备份文件Network-763B5450-F29D-4906-ACA2-823178A59DDB.bak从虚拟机拷贝到实体机,再用FactoryTalk Administration Console将其还原,操作如下图.


5. 加密环境还原以后,双击打开TestSec.ACD程序,弹出登录框,填写用户名:rsadmin,以及密码,点击OK登录.


6. 这时,再次提醒无法打开程序,原因为FactoryTalk Network Directory没有控制器名称TestSec.


7. 由于在虚拟机里创建的程序是基于控制器名称加密的,所以,还需在实体机的FactoryTalk Administration Console添加控制器名称TestSec,详细操作见下图.


8. 完成以上步序后,再双击打开TestSec.ACD程序,就能正常打开了.


9. 打开CPU属性,如需去掉加密,将其修改为No Protection即可.


07基于许可证的加密
1. 在虚拟机中,打开FactoryTalk Administration Console,以rsadmin用户登录,添加一个许可证abseme,操作方法如下图所示.


2. 在虚拟机中,打开Studio 5000 v30,新建一个项目TestSec2,点击下一步,加密设置如红色方框标识处,选中Permission Set,基于许可证加密,并选择许可证abseme.


3. 编写一段测试程序并保存,打开CPU属性,可以查看到该程序是基于许可证的加密,其许可证为abseme.


4. 将TestSec2.ACD程序从虚拟机拷贝到实体机,并双击打开,提示无法打开,原因为FactoryTalk Network Directory没有许可证abseme.


5. 由于在虚拟机里新建的程序是基于许可证加密的,所以,还需在实体机的FactoryTalk Administration Console添加许可证abseme,详细操作见下图。


6. 添加许可证后,再双击TestSec2.ACD就能正常打开了,若需去掉加密,在控制器属性中将加密设置修改为No Protection即可.


08资料下载
如果您需要:1. 本文参考资料:《FactoryTalk Security System Configuration Guide 》,安全配置指导,罗克韦尔官方出品,2018年,英文.2. 本文pdf文档:《Studio 5000新的加密方式》,AB PLC工作室出品,2019年,中文.3. 下载方式:点击左下角的“阅读原文”
提取码:p78q
结语:综上所述,针对AB Logix5000控制器,可通过FactoryTalk Administration Console软件配置加密环境,配合编程软件Studio 5000,对其进行控制器加密。该方式不仅增强了安全性,而且具有很大的灵活性,可根据实际情况采取不同的安全策略,从而保护知识产权不被侵犯。另外,不止Studio 5000可以通过这种方式加密,其他AB软件,如RSLogix500、FactoryTalk View SE等,感兴趣的朋友可以去研究一下。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则