您正在使用不安全的X509TrustManager实现。

12

我在谷歌Play商店上有一个应用,今天收到了一封来自Google的邮件,内容如下:

Google Play警告:您正在使用不安全的X509TrustManager实现

这封邮件涉及到SSL证书问题,并提供了解决问题的方法。

我问这个问题是因为好奇心,

  1. 这个警告究竟是什么意思?
  2. 我的应用程序中没有使用任何与网络相关的活动(这是一个本地数据库驱动的应用程序),那么为什么我的应用程序会出现这个警告?

更多细节:

我的应用程序是使用Appcelerator Titanium构建的,谷歌表示这个实现在 ti.modules.titanium.network.NonValidatingTrustManager; 中。 我确定我从未在我的代码中使用过这样的类。

5个回答

8

实际上这个警告是关于什么的?

你应该已经被链接到此页面,其中解释了这个警告是关于什么的。简而言之,Google正在扫描应用程序,以查找那些弄砸SSL的人,比如盲目地接受所有证书为有效。

我的应用程序中没有使用任何与网络相关的活动(它是一个本地数据库驱动的应用程序),那么为什么我的应用程序会出现这个警告?

因为你的APK中有其他东西做了这件事。在这位开发者的情况下,是一个库。

我的应用程序是使用Appcelerator Titanium构建的,谷歌说这个实现在ti.modules.titanium.network.NonValidatingTrustManager;中。我确定我从未在我的代码中使用过这样的类。

你可能没有直接使用它。然而,其他东西正在使用它。或者,它可能存在,因为它只是整个Titanium框架的一部分,并保留在你的APK中。


6

2

1

2
Appcelerator将会在5月中旬的截止日期前准备好更新的SDK。更多信息即将在我们的博客上发布。 - Fokke Zandbergen

0

我刚刚在我的应用程序上收到了相同的消息。与 OP 指定的模块相同。

ti.modules.titanium.network.NonValidatingTrustManager;

我目前的研究得出以下几点:

相反,您应该使用HTTPClient的securityManager属性来实现对SSL证书存储的支持。

  • 很不幸,SecurityManagerProtocol文档中没有示例。我找到的少数参考资料(http://docs.appcelerator.com/platform/latest/#!/api/Modules.Https)需要使用modules.https,而这是一个付费模块。

  • 我有一个问题:如果Google拒绝所有具有这个特定问题的Appcelerator应用程序,并且只有付费订阅的开发者才能获得官方支持的解决方案,这是否意味着Appcelerator的“社区版”与Google Play不兼容?Appcelerator是否计划为其社区成员正式支持HTTPS?

如果有任何来自Appcelerator的人愿意发表评论,请告知。 谢谢, David


1
Appcelerator将会在5月中旬的截止日期前准备好更新的SDK。我们的博客上很快会有更多信息。虽然HTTPS模块是一个高级团队+模块,但我们会确保任何Titanium开发人员都可以在5月中旬的截止日期前做好准备。 - Fokke Zandbergen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接