为面向Android N的应用添加可信证书颁发机构

时间:2016-07-16 19:23:22

标签: android certificate truststore android-7.0-nougat

根据Android N documentation -

  

默认情况下,以Android N为目标的应用仅信任系统提供的证书,不再信任用户添加的证书颁发机构(CA)。希望信任用户添加的CA的针对Android N的应用应使用网络安全配置来指定用户CA应如何信任。

我从文档中了解到,用户安装的证书将不再受到Android N的信任。因此,应该有一种方法可以让它信任。 Doc说您可以在清单文件中指定网络sec配置,例如 -

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
  <application android:networkSecurityConfig="@xml/network_security_config"
               ... >
    ...
  </application>
</manifest>

然后指定网络配置 -

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config>
        <domain includeSubdomains="true">example.com</domain>
        <trust-anchors>
            <certificates src="@raw/my_ca"/>
        </trust-anchors>
    </domain-config>
</network-security-config>

但这显然是静态数据。我很想知道是否有一种方法可以动态地在信任存储中添加证书,因为在实际场景中将有动态证书和到期场景。 Docs没有为我清楚这些。

Q1。关于如何实现动态添加可信证书的任何想法或建议?

Q2。这是否也会影响其他证书,例如可能不是应用特定的wifi证书?如何信任自定义wifi证书呢?如何将其添加到本机信任存储区?

0 个答案:

没有答案