论文部分内容阅读
摘 要 为解决传统的销售场景中,销售人员的用户体验不好,销售周期长,安全性难以保证,工作效率不高的问题,本文提出基于Win8平台移动销售助手的安全架构的解决方案。该方案可以支持移动销售助手的功能需求,满足了在移动环境下应用对服务器数据的安全访问和存储。然后,结合登录,查询账户信息和保存联系人的例子给出了一个具体实现。最后,对此安全架构在对应用的功能性,重用性,易用性和性能影响方面做出了总结。
关键词 移动销售助手;安全架构;Win8;Web Service
中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2013)14-0062-02
1 移动销售助手的介绍
早期使用Web方式的客户关系管理系统时,销售人员需要携带笔记本到客户现场完成销售行为,增加了销售人员的负担。通过手机浏览客户关系管理系统的内容,手机的不良体验性以及安全性难以保证,使得销售人员的满意度不高。使用基于Win8平台的移动销售助手,销售人员可以携带它拜访客户,加强了访问客户关系管理系统数据的安全性,提高了销售人员的工作效率和满意度。
2 Win8移动设备的安全性
移动平台的种类很多,每种平台的特定功能和API都可以用来开发一个安全的移动应用。基于Win8平台的移动销售助手的开发过程当中,主要使用了沙箱,独立存储,加密和VPN(虚拟专用网络)技术来建立一个安全的架构。沙箱模型是第三方应用不能在背后运行,只能访问他们的独立存储,不能和用户的数据以及应用的功能进行交互。独立存储为可信的应用提供了安全的存储,它能确保客户端维护自己的本地存储,而不能访问其他客户端的数据。
3 移动销售助手安全架构的设计
基于Win8平台的移动销售助手的功能包括:
①登录应用。②查询数据。③保存数据。④创建数据的快捷方式,并在应用启动时,显示在仪表盘上。
为了实现这些功能,Win8平台的移动销售助手的安全架构的要点如下:
①应用访问:只有已登录用户才能访问应用。
②数据存储:数据必须进行加密后,存放到独立存储上。
③数据传输:应用和服务器之间的数据传输必须是安全的。
因此,安全架构具有以下的因素:
①加解密数据使用对称密钥方案。
②服务器为用户产生密码,用户需要使用密码登录应用。
③数据的存储需要使用用户的密码进行加密。读取数据时,使用用户的密码进行解密。
④为保障网络上数据传输的安全性,Win8设备需要登录VPN,再进行相应操作。
因此,基于Win8平台移动销售助手的安全架构包括4层:
①Win8设备层。
这是基于Win8平台移动销售助手应用所在的层次。
②VPN层。
VPN传输的是私有信息,VPN主要采用四项技术来保证安全,这四项技术分别是隧道技术、加解密技术、密钥管理技术、使用者与设备身份认证技术。
③Web Service层。
应用和服务器使用Web Service来进行通信。
④服务器层。
服务器收到客户端的请求并进行相应的操作。
4 移动销售助手安全架构的实现
安全架构的实现由应用,VPN层和WCF web service组成。应用和Web Service间使用xml格式进行数据交换。用户登录时,应用和服务器交换的xml格式如下:
1234567890
用户查询账户信息的过程如下:
①用户选择查看所有的账户信息。
②应用验证用户是否登录,如果已登录,则继续;否则返回到登录界面。
③应用生成查询数据的URL:http://BaseURIL /AccountCollection,向服务器发出http get请求。
④服务器将账户信息的xml文件返回到应用。
⑤应用解析xml,并在用户界面显示所有的账户列表。
查询账户信息的源代码如下:
HttpResponseMessage response = await httpClient.GetAsync(requestedURL);
string responseXML = await response.Content.ReadAsStringAsync();
解析xml的源代码如下:
xmldoc.LoadXml(responseXML);
XmlNodeList elems = xmldoc.SelectNodesNS("/a:feed/a:entry/a:content/m:properties", ns);
foreach (IXmlNode elem in elems) {…}
创建联系人的快捷方式的过程如下:
①用户将联系人添加到快捷方式。
②应用将此联系人存放到快捷方式的内存中。
③用户选择暂停应用或者终止应用。
④应用将内存中联系人的快捷方式加密后存放到独立存
储中。
源代码如下:
byte[] bytIn = UTF8Encoding.UTF8.GetBytes(SourceContactsXML); MemoryStream ms = new MemoryStream();…
eturn Convert.ToBase64String(bytOut);
用户保存联系人的过程如下:
①用户选择保存联系人。
②应用向服务器申请保存联系人的token,并返回给应用。
②应用生成联系人的xml字符串。
③应用使用xml字符串,保存联系人的token和URL向服务器提交http post请求。
④服务器将保存联系人是否成功的消息返回给应用。
⑤应用显示保存联系人成功或者失败。
源代码如下:
headers.Add(CSRF_TOKEN_KEY, CSRF_TOKEN_VALUE);
var content = new StringContent(getSavedContactXML (), Encoding.UTF8);
HttpResponseMessage response = await httpClient.PostAsync(requestedURL, content);
5 结论
移动销售助手对系统的安全架构提出了很高的要求。我们提出的安全架构能够满足功能需求,在数据访问,存储以及用户的数据隔离方面都达到了要求。它可以应用于其他的移动平台:Web Service是一个通用的元素,不会影响到移动应用。另外,这个安全架构对应用的性能方面也没有负面影响。
参考文献
[1]Gaurav Gupta,“Consume Web Service in Windows Store App Using C#”:http://www.c-sharpcorner.com/uploadfile/99bb20/consume-web-service-in-metro-style-app/.
[2]Professional ASP.NET Web Services: Asynchronous Programming[Online]Available:http://wwww.stardeveloper.com/articles/display.html?article=2001121901&page=1.
作者简介
刘艳(1981-),女,北京人,学生,学历:硕士,研究方向:软件工程与管理。
关键词 移动销售助手;安全架构;Win8;Web Service
中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2013)14-0062-02
1 移动销售助手的介绍
早期使用Web方式的客户关系管理系统时,销售人员需要携带笔记本到客户现场完成销售行为,增加了销售人员的负担。通过手机浏览客户关系管理系统的内容,手机的不良体验性以及安全性难以保证,使得销售人员的满意度不高。使用基于Win8平台的移动销售助手,销售人员可以携带它拜访客户,加强了访问客户关系管理系统数据的安全性,提高了销售人员的工作效率和满意度。
2 Win8移动设备的安全性
移动平台的种类很多,每种平台的特定功能和API都可以用来开发一个安全的移动应用。基于Win8平台的移动销售助手的开发过程当中,主要使用了沙箱,独立存储,加密和VPN(虚拟专用网络)技术来建立一个安全的架构。沙箱模型是第三方应用不能在背后运行,只能访问他们的独立存储,不能和用户的数据以及应用的功能进行交互。独立存储为可信的应用提供了安全的存储,它能确保客户端维护自己的本地存储,而不能访问其他客户端的数据。
3 移动销售助手安全架构的设计
基于Win8平台的移动销售助手的功能包括:
①登录应用。②查询数据。③保存数据。④创建数据的快捷方式,并在应用启动时,显示在仪表盘上。
为了实现这些功能,Win8平台的移动销售助手的安全架构的要点如下:
①应用访问:只有已登录用户才能访问应用。
②数据存储:数据必须进行加密后,存放到独立存储上。
③数据传输:应用和服务器之间的数据传输必须是安全的。
因此,安全架构具有以下的因素:
①加解密数据使用对称密钥方案。
②服务器为用户产生密码,用户需要使用密码登录应用。
③数据的存储需要使用用户的密码进行加密。读取数据时,使用用户的密码进行解密。
④为保障网络上数据传输的安全性,Win8设备需要登录VPN,再进行相应操作。
因此,基于Win8平台移动销售助手的安全架构包括4层:
①Win8设备层。
这是基于Win8平台移动销售助手应用所在的层次。
②VPN层。
VPN传输的是私有信息,VPN主要采用四项技术来保证安全,这四项技术分别是隧道技术、加解密技术、密钥管理技术、使用者与设备身份认证技术。
③Web Service层。
应用和服务器使用Web Service来进行通信。
④服务器层。
服务器收到客户端的请求并进行相应的操作。
4 移动销售助手安全架构的实现
安全架构的实现由应用,VPN层和WCF web service组成。应用和Web Service间使用xml格式进行数据交换。用户登录时,应用和服务器交换的xml格式如下:
用户查询账户信息的过程如下:
①用户选择查看所有的账户信息。
②应用验证用户是否登录,如果已登录,则继续;否则返回到登录界面。
③应用生成查询数据的URL:http://BaseURIL /AccountCollection,向服务器发出http get请求。
④服务器将账户信息的xml文件返回到应用。
⑤应用解析xml,并在用户界面显示所有的账户列表。
查询账户信息的源代码如下:
HttpResponseMessage response = await httpClient.GetAsync(requestedURL);
string responseXML = await response.Content.ReadAsStringAsync();
解析xml的源代码如下:
xmldoc.LoadXml(responseXML);
XmlNodeList elems = xmldoc.SelectNodesNS("/a:feed/a:entry/a:content/m:properties", ns);
foreach (IXmlNode elem in elems) {…}
创建联系人的快捷方式的过程如下:
①用户将联系人添加到快捷方式。
②应用将此联系人存放到快捷方式的内存中。
③用户选择暂停应用或者终止应用。
④应用将内存中联系人的快捷方式加密后存放到独立存
储中。
源代码如下:
byte[] bytIn = UTF8Encoding.UTF8.GetBytes(SourceContactsXML); MemoryStream ms = new MemoryStream();…
eturn Convert.ToBase64String(bytOut);
用户保存联系人的过程如下:
①用户选择保存联系人。
②应用向服务器申请保存联系人的token,并返回给应用。
②应用生成联系人的xml字符串。
③应用使用xml字符串,保存联系人的token和URL向服务器提交http post请求。
④服务器将保存联系人是否成功的消息返回给应用。
⑤应用显示保存联系人成功或者失败。
源代码如下:
headers.Add(CSRF_TOKEN_KEY, CSRF_TOKEN_VALUE);
var content = new StringContent(getSavedContactXML (), Encoding.UTF8);
HttpResponseMessage response = await httpClient.PostAsync(requestedURL, content);
5 结论
移动销售助手对系统的安全架构提出了很高的要求。我们提出的安全架构能够满足功能需求,在数据访问,存储以及用户的数据隔离方面都达到了要求。它可以应用于其他的移动平台:Web Service是一个通用的元素,不会影响到移动应用。另外,这个安全架构对应用的性能方面也没有负面影响。
参考文献
[1]Gaurav Gupta,“Consume Web Service in Windows Store App Using C#”:http://www.c-sharpcorner.com/uploadfile/99bb20/consume-web-service-in-metro-style-app/.
[2]Professional ASP.NET Web Services: Asynchronous Programming[Online]Available:http://wwww.stardeveloper.com/articles/display.html?article=2001121901&page=1.
作者简介
刘艳(1981-),女,北京人,学生,学历:硕士,研究方向:软件工程与管理。