我知道这是一个重复的帖子..
我想知道,Android或phonegap应用程序更适合银行应用程序使用Webservice访问SSL认证页面以访问私人详细信息(帐号,帐户详细信息等)?
1.获得SSL认证页面(Android Vs Phonegap)的优缺点是什么?
2.什么是安全问题?
3.如何解决这个问题?(实现这一目标的指南)
需要一些有用的文档来澄清我的怀疑......在此先感谢
答案 0 :(得分:11)
我尝试为HTTP SSL POST请求创建一个自定义java插件,以避免ajax POST,这对我有用。
1创建一个新课程" YOUR_CUSTOM_CLASS"
2在您的javascript中添加此
cordova.exec(function(datas) {
//CALLBACK SUCCESS
}, function(error) {
//ERROR CALLBACK
}, "YOUR_CUSTOM_CLASS", ["Your_Password", "Your_Username"]);
3在config.xml中添加此
<feature name="YOUR_CUSTOM_CLASS">
<param name="android-package" value="yourpackage.YOUR_CUSTOM_CLASS" /> </feature>
试试这个,它可能对你有帮助。
答案 1 :(得分:1)
除非您能找到在PhoneGap / Cordova中进行证书固定的方法,否则我建议不要使用它来制作银行应用程序。 iOS PhoneGap应用程序中的证书引脚可能并不太难,但在Android中,它需要像本机插件一样与Web服务进行所有通信(基本上是用本机调用填充xhr / ajax)。
PhoneGap应用程序完全能够使用xhr / ajax访问SSL(https)Web服务,但是如果没有证书固定,您将面临中间攻击中Man的风险。
对于大多数应用程序而言,这是一个可接受的风险,但对于银行应用程序而言,这将是非常危险的。
编辑:自回答此问题以来,已发布一个插件,可使用本机网络处理请求,并包含证书固定:https://github.com/wymsee/cordova-HTTP
答案 2 :(得分:1)
我最近发布了一个使用离子框架的cordova app,它连接到运行REST框架的Django服务器。因为我们使用的是auth令牌,所以SSL非常重要。
仅仅通过强制我的所有代码使用https://
代替http://
,我没有任何问题让我的cordova应用程序连接到SSL服务器。
老实说,除了易于设置和签名证书的成本之外,没有充分的理由不使用SSL。
顺便说一下,没有必要为此复杂的java插件。使用标准的XMLHttpRequest,AJAX over https可以很好地开箱即用。
答案 3 :(得分:0)
有一个用于iOS和android https://github.com/EddyVerbruggen/SSLCertificateChecker-PhoneGap-Plugin
的证书检查插件1.获取SSL认证页面(Android Vs Phonegap)的优缺点是什么? 如果你只是访问一个SSL认证的页面,从android或者phonegap进行同样的操作,你仍然可以让人处于中间攻击状态。
2.什么是安全问题? 中间人攻击
3.如何解决这个问题?(实现这一目标的指南) 每次尝试连接服务器时都要检查证书,在phonegap中你可以使用我告诉你的插件,在android上你可以原生地使用它。