不同产品的安全权限设置区。
在不同产品的安全权限设置窗口中,您可以点击产品前的+号,在这里,您会发现我们的安全功能是非常强大的。以大家最常使用的RSLogix5000编程软件为例,在这里您可以针对不同的用户组,设定不同的使用权限,诸如创建新的项目工程,上传下载,刷新控制器固件,添加修改标签,添加修改程序,等等。在每一项对应的Action功能中,如果你希望该用户组可以拥有这项权限,就在后面Allow(允许)方块中打勾,反之则在Deny(禁止)方块中打勾。 这里需要注意的是,一个用户可以归属于多个用户组。比如创建的test用户,我可以把它配置为既属于用户组Administrator,又让它属于用户组No Access。于是问题就出现了,针对某一项Action,用户组Administrator中可能设置为Allow,而用户组No Access中可能设置为Deny。这里就有一个权限优先级问题,Deny选项的权限高于Allow选项的权限,就是说一旦有个用户在某个用户组中Deny了一个Action权限,那么即使它在其他用户组中Allow了该权限,也最终无权使用这个Action。 这里为了方便后面的测试,我让Engineer用户组拥有RSLogix5000编程软件的所有权限,而用户组Operator只享有部分权限,用户组No Access不具有任何权限。大致配置如下图。 对于用户组Engineer,我让他拥有RSLogix5000所有的权限。
对于用户组Operator,我让他拥有RSLogix5000部分权限。从显示的窗口中大家可以看到,我不允许该用户组下的用户创建、修改程序例程,这样我们可以在后面通过实验测试这方面的内容!
安全功能在实际应用中是如何实现的。 通过上面的设置,大家会发现FactoryTalk Administration Console的强大安全功能,他对每一款产品都做了功能上的细化。那么,客户将来怎样在实际项目中使用这个安全软件呢? 将来负责程序开发的客户工程师,可以像上面介绍的那样一步步设置自己电脑的安全环境,然后将设定好的环境备份。这个备份好的环境设置文件要妥善保存。工程师在该环境下创建的项目工程文件一旦选择了安全加密,那么这个被安全加密的程序文件将来只能在该安全环境下被打开编辑。这样,如果开发程序的工程师想让另外一位工程师在别的电脑上打开编辑自己加密过的程序文件,就要把他的FactoryTalk Administration Console安全环境备份文件拷贝给另一位工程师,另一位工程师在自己的电脑上还原这个备份文件,这样他们就有了完成相同的安全设置与ID。原程序开发工程师可以创建多个用户组和用户,这时他可以根据自己的需要,把其中一个用户的登录名与密码告诉另一位工程师,另一位工程师可以通过这个用户名与密码在自己还原过的环境下打开原程序!因为每个用户组都可以设定不同的安全权限,原程序开发工程师可以根据需求,把不同级别的用户名与密码告诉不同的工程师,让不同的工程师拥有不同的程序编辑权限。 通过上面的介绍,大家应该大致了解了FactoryTalk Administration Console是如何实现安全功能的。但仅做了上面介绍的配置还不够,这里存在一个问题。问题如下: 我首先在FactoryTalk Administration Console中退出管理员登录状态: 然后以另一个用户登录,比如我之前创建的Operator用户组下的用户Others。 这时,就好比另一个工程师得到了我给他的备份文件和用户密码,他就可以在自己的电脑上还原我的安全设置环境,并用这个用户密码登录打开我创建的加密程序。但是,我给他的用户只有部分权限,可是他可以用这个用户密码登录打开FactoryTalk Administration Console软件,就可以在这个软件里轻易修改自己所在用户组的安全权限,而且还可以创建新的管理员级用户!如此一来,我苦心设计的安全权限对他就失效了!如下: 修改安全设置,从而扩大当前用户的权限!
添加新的用户,让新用户属于Administrators用户组,从而具有全部的权限,然后再用新的管理员用户登录,解除对自己的!
所以只完成之前介绍的安全设置还不够,我们还要防止非授权的用户打开、管理FactoryTalk Administration Console软件。这部分设置工作如下: 首先以管理员用户登录打开FactoryTalk Administration Console软件,然后进入安全设置窗口: 在这里,我们保留管理员用户组Administrators功能不变,针对用户组Operator,我不让它下面的用户登陆打开FactoryTalk Administration Console软件进行配置,我做如下操作: 选中用户组Operator,我们在下面的设置窗口中把Common项选成Deny。
针对用户组Engineer,做如下操作: 选中用户组Engineer,我们在下面的设置窗口中把Common项的前两项:Configure Security和Create Children选成Deny。
完成上述设定后,我们来测试一下: 以用户组Operator的用户Others登录,我们可以看到下面内容: 虽然以这个用户登录可以打开
FactoryTalk Administration Console软件。但是我们可以看到,Network (THIS COMPUTER)目录下没有任何菜单显示,也就无法进行任何安全设置!
我们再以用户组Engineer的用户Alan登录,我们可以看到下面内容: 虽然以这个用户登录可以打开
FactoryTalk Administration Console软件,也可以看到Network (THIS
COMPUTER)目录下的菜单。但右键选中Network (THIS COMPUTER),我们会看到之前出现在最下方的Security选项不见了,也就是我们无法修改用户的安全权限!
我们再来看创建新用户!我让新用户成为用户组
Administrators的成员。
点击OK进行创建,显示如下报警: 该报警说明您没有权限创建用户组Administrators
的用户!
从中可以看出,以上两种设置都可以防止非授权用户修改FactoryTalk Administration Console软件的安全设置! 完成上述设置,FactoryTalk Administration Console软件的安全设置基本完成,这时您需要为新的设置创建一个新的FactoryTalk Security Authority Identifier。下面,会介绍FactoryTalk Security Authority Identifier的创建。 创建新的FactoryTalk Security Authority Identifier… 完成上述用户组安全权限设定之后,我们需要创建一个新的FactoryTalk Security Authority Identifier。具体步骤如下: 在弹出的对话窗口中,选择Generate ID。如下所示: 接下来会弹出下面的窗口,提示新的Security Authority Identifier被创建好了,这个新的ID号码为86DA82F9-BEC4-49FC-BE7B-8049C227ACC1,这组16进制的数字串是基于您系统和时间创建的,也是唯一的,从而保证了他的安全性。接下来您可以点击Close关闭该窗口。 备份新的安全环境。 创建了新的Security Authority Identifier之后,首先要做的就是备份当前环境。您可以在上面新ID创建成功的提示窗口中选择Backup按钮直接备份,也可以像前面介绍的那样备份。 在弹出的窗口中,我们可以看到新的备份文件名称、保存路径、是否是密码保护等信息。从备份文件名称:Network-86DA82F9-BEC4-49FC-B和当前的新Security Authority Identifier号码:86DA82F9-BEC4-49FC-BE7B-8049C227ACC1中可以看到,它们是一一对应的,所以不建议大家修改备份文件名。 点击OK,完成备份,会弹出下面的窗口,确认备份成功。再点击OK关闭窗口。 至此,所有的安全设置完成。接下来我们实际测试一下! 首先,打开RSLogix5000编程软件。双击RSLogix5000图标,弹出如下窗口: 这说明FactoryTalk Administration Console软件中的SSO功能已经启用,需要用户通过用户名与密码才能打开该软件。你用什么权限的用户登录,在RSLogix5000编程软件中就只拥有该用户的权限!
这里,我用Engineer用户组的用户Alan登录打开RSLogix5000编程软件。通过前面的设置我们知道,Engineer用户组拥有RSLogix5000软件的全部权限!
打开RSLogix5000软件后,我们创建一个新的项目工程,并为该工程设置安全加密功能,即在Security Authority选项时选择安全加密,配置如下: 点击保存按钮,然后关闭这个新创建的项目工程。 接下来,双击桌面上这个新创建的项目工程图标,再次打开它。在弹出的登录窗口中,使用用户组Operator的用户Others登录,该用户只拥有RSLogix5000软件的部分权限。如下所示: 这里可以看到,该用户虽然可以打开该项目工程,但是无法创建新的Routine,也无法在已有的例程中编写新的指令代码,图中这些区域显示为灰色,不可编辑!
接下来,我们再测试非授权环境下能否打开该程序。首先将FactoryTalk Administration Console软件还原到另外一个环境下,这里我们用之前备份过的初始安装环境进行试验。 因为我们之前勾选了密码保护,但是没有设置密码,所以这里直接点击OK即可。
点击Finish完成还原,这时您的电脑就相当于另外一台电脑了,没有您之前设置的安全环境。这时您再双击打开之前创建的项目工程,会弹出如下报警,提示您无权打开这个加密的工程! 以上就是FactoryTalk Administration Console软件安全功能的部分测试,更多详细内容大家可以查阅网上手册,比如,通过设置来ControlLogix控制器只能通过背板上的某个槽位的通讯模块进行数据读取等功能。当设置了安全加密的程序下载到控制器中后,同样,只有拥有相同安全环境的电脑以正确的用户名与密码,才可以连上控制器,读取程序。 最后实际应用中可能还会有一个小误区最后实际应用中可能还会有一个小误区,实际应用中可能还会有一个小误区,这里提示一下大家: 接着上面的测试,我们将电脑的FactoryTalk Administration Console软件再次还原回最终的安全设置环境下,具体步骤这里就不再重复了。还原之后,使用具有权限的用户名与密码登录,理论上应该可以打开之前创建的加密的项目工程,我们来看一下: 点击OK,您发现并没有打开项目工程,而是弹出如下报警: 这不表示您之前的设置有误或是软件出现了故障,而是我们没有正确打开软件。 在您还原环境之后,或是其他工程师还原了你提供的安全环境备份之后,如果要打开该环境下的安全加密文件,还有一项设置要做,步骤如下: 首先,登录FactoryTalk Administration Console软件,点击开Networks and Devices前的+号,选中以太网的扫描驱动AB_ETHIP,Ethernet,右键选择属性Properties。如下所示: 在属性窗口中,点击Logical name选项卡的下拉菜单,选中New选项。如下所示: 在弹出的对话窗口中,用键盘输入之前创建的安全加密的项目工程文件名,即Security_Test,然后点击OK关闭窗口。如下所示: 接下来关闭之前的FactoryTalk Administration Console窗口,以该环境下存在的用户名打开之前加密的项目工程,文件就打开了! 从中我们看出,在用户组针对FactoryTalk Administration Console软件的安全设置中,最好采用之前介绍的两种方案中的第二套方案,这样既可以保证非管理员用户擅自修改FactoryTalk Administration Console软件的安全设置,又可以让他看到并代开FactoryTalk Administration Console软件的下拉菜单,完成如上操作,在Logical name中添加项目工程名称。如下图所示: 以上是FactoryTalk Administration Console软件的基本应用,有不当之处欢迎大家指正,谢谢!
因篇幅问题不能全部显示,请点此查看更多更全内容