ERP系统中IAM功能的应用设计
IAM(身份识别与访问管理)是近年来比较热的一个信息安全产品,包括2个方面:身份识别与访问管理。身份识别是指计算机及网络系统确认操作者数字身份的过程,访问管理是指权限的分配。IAM是由连续5年被IDC评为IAM市场领军企业的CA公司最新推出的产品,其良好的特性(即全面性、集成性、开放性),使客户得以将CA的安全策略引擎成功地延伸到所开发的应用程序中。本文在开发实施ERP应用系统的过程中,针对IAM系统所做的应用设计进行了介绍。
1、IAM系统功能
IAM系统独立于erp系统,其功能是负责ERP系统的用户身份认证与访问管理。该系统在使用传统用户/密码技术的基础上增加了指纹验证、USB Key、智能帚等识别技术,是一个多因子可选择认证系统。该系统采用C/S架构,与ERP系统之间采用共享内存与加密文件的方式进行交互。针对ERP系统的访问,使用了防火墙技术。
IAM系统的功能模块包括注册子模块、销户子模块、身份认证子模块、访问管理子模块、IAM与ERP系统的接口子模块、针对ERP系统的防火墙子模块、加密传输子模块等。
(1)注册子模块
用户注册时需提交用户的基本信息。如果采用指纹验证,还需要提供指纹图像。IAM系统客户端先记录用户的基本信息,接着对提交的指纹图像进行预处理后提取其特征。
用户在填写基本信息时,需重复输入密码。一旦2次密码匹配且采集到指纹,系统则将用户的基本信息加密后传输给服务器,以验证用户的合法性。如果合法,则用户的注册资料将存入相关数据库,并返回注册成功信息;否则,返回注册失败的信息。
(2)销户子模块
用户退出ERP系统时需进行用户注销操作。用户注销由IAM客户端发起请求,由IAM服务器端进行处理。销户时也要进行用户信息的核对,并将操作记录存进日志中。
(3)身份认证子模块
身份认证是IAM系统的灵魂和基础,该模块提供了多种识别方式供ERP实施人员在实施的过程中自由选择组合。
1)指纹认证
指纹是一种比较稳定的生物特征,不会因年龄或健康情况的变化而变化,2枚指纹即使具有相同的总体特征,但局部特征(即特征点)却不可能完全相同。指纹识别技术通常使用指纹的总体特征,即纹形、三角点等来进行分类后,再用局部特征,即位置、方向等来识别用户身份。识别过程包括:指纹的获取,指纹图像预处理,指纹特征提取,以及指纹特征匹配。
指纹特征匹配采用指纹几何特征技术。考虑到指纹可能存在茧、刀伤或者采集干扰等问题,同一用户可以新增2个~3个指纹,目的是使数据库里尽可能存有用户的最新指纹。
2)智能卡认证
用户可以使用钾能卡来登录系统。智能卡是一种用于存放用户身份信息的、内置的、不可复制的集成电路。智能卡认证通过使用不可复制的硬件来保证用户身份的唯一性。
用户将自己的信息存储到智能卡上,当IAM系统检测到有智能卡插入时,就读取智能卡上的数据,并将其发送到IAM系统的服务器端,进行验证。
3)USBKey认证
USB Key认证使用了具有USB接口的USB Key硬件。每个USB Key硬件都有用户PIN码,且内置单向散列算法(MD5)。USB Key认证首先要在USB Key和服务器中各存储一个能证明用户身份的密钥。当需要验证用户身份时,先由客户端向服务器发出一个验证请求。服务器接到此请求后生成一个随机数并传给客户端(此为冲击)。客户端将收到的随机数提供给插在客户端上的USB Key,由USB Key使用该随机数与存储在USB Key中的密钥进行带密钥的单向散列运算(HMAC-MD5),并将得到的结果作为认证证据传送给服务器(此为响应)。与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行HMAC-MD5运算。如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户。
(4)访问管理子模块
在ERP系统中,每一种用户能够访问的资源是不同的,因此要由系统管理员来对各用户进行划分权限。系统管理员甚至可以设置系统中各个用户的用户名和密码,这对系统的安全造成了隐患。本系统在为用户重设密码时,采用了系统产生随机数后发送到用户邮箱的方式,在数据库中的密码也要经过MD5加密后再进行存放。
(5)IAM系统与ERP系统的接口子模块
开放性是一个IAM系统的重要特性。开放就是必须要有通用的开放接口,能通过简单、灵活的开发,与各种应用系统紧密连接。
(6)ERP系统的防火墙子模块
系统在用户登录时,IAM对其IP地址和端口进行登记,另外再获取正在与ERP系统通信的IP和端口,通过对比,当正在发生通信的源IP和端口与已经登记的不同时,就对其进行拦截。
(7)加密传输子模块
在往网络发送信息之前,协议层需调用安全层中的加密模块加密后发送信息,以达到安全通信的目的。本系统采用以随机数作为AES(Advanced Encryption Standard)加密算法的Key加密机制,并配合MD5散列算法,较好地解决了网络传输的安全性问题。
2、IAM系统设计
下面介绍系统的设计:
(1)软件平台和开发工具
操作系统:带有Service Pack 2.0的Microsoft Windows XP Professional。
数据库平台:MySQL-4.0.13 for Windows。
开发工具:Microsoft Visual Studio,ADO.NET(连接数据库)。
(2)服务器端设计
IAM系统Server端负责管理用户身份以及完成与客户端的交互,并管理用户的智能卡信息、USB Key信息、指纹信息等数据库。
IAM系统结构关系如图1所示。图2是以指纹认证为例的服务器端的运行界面。
(3)客户端设计
以指纹认证为例,注册子模块完成对授权新用户信息的注册,主要工作包括指纹特征信息获取、用户认证信息加密、用户认证信息传输、用户认证信息解密和指纹特征信息匹配。认证子模块用于验证请求登录的用户是否是合法的用户,用户在登录过程中,需要输入正确的用户名/密码及相匹配的指纹才能通过认证。注册及认证模块会调用图像的预处理模块、特征值提取以及网络传输等模块。在网络传输子模块中使用了AES加密技术。用户登录时,如果成功登录,则会获得通过验证用户特有的权限。一旦通过验证,对应的菜单栏将加亮,用户便通过了进入ERP系统的认证,获得了访问管理的资格。
3、设计过程中遇到的问题以及解决方法
与现有的ERP系统的平滑连接是IAM系统设计追求的目标。下面介绍在本系统设计中所提出并实现的IAM与ERP系统的3种对接机制。
(1)机制1——加密文件作中间桥梁
用户登录IAM系统通过验证后,IAM系统会在其服务器端生成一个加密文件。当用户调用ERP系统时,ERP系统会连接到IAM服务器端去读加密文件,获得该用户成功登录的资料后,系统直接进入ERP系统的功能界面。此机制的特点是:使用加密文件作为中间桥梁,以实现2个不同系统的对接。
(2)机制2——标识变量交互
登录IAM系统通过验证后,IAM服务器会给IAM客户端返回一个标识变量。当该用户在本次髓录中使用ERP系统时,由IAM客户端直接将此标记变量传递给ERP系统。ERP系统会先检查是否有正确的参数传递过来,然后再把接收到的参数与企业的安全数据库进行验证。如确认,系统直接进入ERP系统的功能界面。
(3)机制3——句柄交互
用户登录IAM系统并通过验证后,该用户获得了使用ERP系统的权限。当该用户使用ERP系统时,IAM客户端会获得ERP系统登录界面需要输入的参数句柄。当输入相关资料后,IAM客户端将其值赋给相应的句柄,然后通过调用Windows提供的相关API函数把赋了值的旬柄发送到ERP系统的登录程序。如果用户信息正确,系统直接进入ERP系统的功能界面。
该机制将ERP用户的权限管理转移到了IAM系统,提高了ERP系统用户管理的安全性。
4、结束语
实践证明,本文所介绍的既独立于现有的ERP系统,又能够与现有的ERP系统实现平滑连接的多因子验证的IAM系统设计方案是切实可行的,其使用的技术也是成熟的,对提高ERP系统的安全性效果显著。
- 1温家宝:宁肯少上项目也要确保养老保险投入
- 2IT行业解决方案:精确管理使管理过程透明化
- 3XTools与江苏风云在线达成CRM服务合作
- 4打通协同管理节点 鼎捷助力宝时得信息化飞跃
- 5协同OA将各应用系统的操作界面统一设计
- 6社科院:今年GDP增长7.7% 明年升至8.2%
- 7基于知识发现的零售业CRM应用设计研究
- 8凯乐科技否认“员工工资变酒条” 称将起诉造谣者
- 9全面预算去伪存真 信息化慧眼识英雄
- 10南宁OA软件多元化的技术支持服务
- 11绵羊还是骏马 ERP实施中提高新鲜人效率
- 12数据挖掘在CRM中的运用
- 13南昌有望建成中部地区最大呼叫中心产业基地
- 14协同办公OA系统对企业的实施调研表
- 15汽车配件行业管理改善和信息化的作用
- 16互联网巨头“狂赌”地图
- 17如何度量CRM核心概念之一客户满意度?
- 18银行呼叫中心外包模式的客户服务管理
- 19企业信息化遭遇三大难题 协同理念突破发展瓶颈
- 20中药类产品8月出口增幅再度收窄
- 21中国纺织品补贴遭墨西哥起诉
- 22商务部支持三一集团起诉奥巴马:望美迷途知返
- 23农夫山泉赠PH试纸测水质遭疑 米醋也呈弱碱性
- 24OA办公自动化软件的信息门户需求建设有哪些?
- 25绩效考核激励销售 CRM创造企业奇迹
- 26OA信息化如何帮助企业释放管理的能量呢?
- 27医疗器械分类动态升级促常态监管
- 28中国石化润滑油公司ERP物码转换项目成功上线
- 29金和C6为世界500强企业中化化肥插上协同翅膀
- 30细数SaaS ERP选型的六大安全问题