问题标签 [trustmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用 OkHttp 进行真实 HTTP 请求的 Robolectric 测试抛出 java.lang.NullPointerException:没有为 PKCS#12 KeyStore 提供密码
我正在使用Robolectric
4.3.1
( testImplementation "org.robolectric:robolectric:4.3.1"
) 为我的集成测试创建一个 Android sqlite 环境。我的系统将OkHttp
( implementation 'com.squareup.okhttp3:okhttp:3.14.7'
) 用于真正的 HTTP 请求。我没有使用MockWebServer
.
升级到 Android 10 SDK 后,我必须根据 Robolectric 指令将单元测试 JVM 更新到 JDK 9 :
在 Android API 29 上运行测试现在严格要求 Java9 运行时或更新版本。如果您在通过 Android Studio 在 API 29 上运行测试时看到有关不支持的 Java 版本的错误;您可以使用“运行配置”对话框中的“JRE”字段来配置更新的 Java 运行时。有关更多背景信息,请参阅https://developer.android.com/studio/run/rundebugconfig。
但是,现在我的集成测试失败了:
我怎样才能再次进行真正的 HTTP 调用?
spring-boot - 用于 Spring Boot 的自定义 KeyManager 和 TrustManager
我决定重新命名我的问题,我正在寻找一种方法来为我的 Spring Boot 应用程序提供自定义的 keymanager 和 trustmanager。基本上我有一个为用户提供自定义 URL 的应用程序,例如: https://user1.mydomain.com https://user2.mydomain.com等这些 url 转发到我的 spring boot 应用程序,并且每个用户都连接到他的/她的自定义 url 显示了不同的 SSL 证书。所以我想确保我为每个连接提供不同的 SSL 证书,证书的后端存储应该是数据库或 ldap。
有任何想法吗?
android - SSL 证书在初始连接时不受信任
我有一个非常令人沮丧的 SSL 错误,根据连接顺序,有效证书不受信任。
因此,如果在启动时,我直接连接到服务器 A。信任管理器将无法验证链并出现错误:
java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
但是,如果我连接到服务器 B,然后连接到服务器 A,它将信任它之前声称无效的相同证书。
有没有人对可能发生什么导致这种信任失败有任何想法?
这就是我设置信任管理器的方式:
据我所知,握手之前发生的所有事情在不同的连接之间都是相同的。唯一的区别是地址。这是在像素 3 上的 android 10 上运行时发生的。
java - 获取错误版本的密钥库。在安卓中
我正在使用 jks 文件注册密钥库,但得到“密钥库的错误版本”。使用以下代码
可能是什么原因,我的主要用例是允许通过注册证书从应用程序进行任何 https 调用
这是堆栈跟踪
android-security - 漏洞信任管理器
我们的应用在 Play Market 中已经存在 4 年了。
在最后一次构建之前,我们在应用中添加了 AppMetrica:
带有这些工具的项目已成功上传到 Play 市场,没有任何通知(错误或警告)。在那之后的几周内,我在 AppMetrica 中对发送报告进行了一些小改动,并收到了来自 Google 的以下通知:
“我们审核了XXX,包名称为XXX,发现您的应用使用了包含用户安全漏洞的软件。存在这些漏洞的应用可能会暴露用户信息或损坏用户设备,可能会被视为违反我们的恶意行为政策。以下是您最近提交中检测到的问题列表和对应的 APK 版本。请尽快迁移您的应用以使用更新的软件,并增加升级后的 APK 的版本号。
漏洞 TrustManager 您可以在这篇 Google 帮助中心文章中找到有关 TrustManager 的更多信息。”
我们在项目中不使用 TrustManager 和他的类。
拒绝的可能原因是什么?这个拒绝有可能是错误的吗?我们怎样才能知道这是什么原因呢?AppMetrica 会导致这种挫折吗?我们应该停止使用它吗?
此外,在拒绝文本中,他们说您可以在应用程序中设置网络配置(https://developer.android.com/training/articles/security-config)——它有什么帮助?
我们正在与这个麻烦作斗争两个星期,我们希望得到您的帮助
flutter - Flutter 应用在 Google Play 上发布时的 TrustManager 漏洞
我最近在 google play 上发布了一个应用程序,我收到了来自 google play 团队的一封电子邮件,其中说:...发现您的应用程序使用的软件包含用户安全漏洞。具有这些漏洞的应用程序可能会暴露用户信息或损坏用户的设备,并可能被视为违反我们的恶意行为政策。
以下是在您最近提交的文件中检测到的问题列表和相应的 APK 版本。请尽快迁移您的应用以使用更新后的软件,并增加升级后 APK 的版本号。
漏洞:信任管理器
我的应用程序是用 Flutter 开发的...
如果你能帮助我,我真的不知道如何解决这个问题。
发布规范.yaml
代码
扑医生
okhttp - 无法使用 OKHTTP3 在 IBM JRE8 上提取信任管理器
任何人都可以帮助解决这个问题。
我也在使用OKHTTP3 版本 4.8.1来编写HTTP2 客户端。它适用于 Oracle JDK 8,但不适用于 IBM JRE 8。
错误消息:java.lang.IllegalStateException:无法在 okhttp3.internal.Platform@e85a0ce8 上提取信任管理器,sslSocketFactory 是 com.ibm.jsse2.SSLSocketFactoryImpl 类。
谢谢
android - HttpsURLConnection, SSLPeerUnverifiedException 访问 IP 地址时发生
当 HttpsURLConnection 尝试使用 IP 地址连接到服务器时,会发生以下异常:
资源
错误
看到一篇文章说需要把证书的CN和IP地址匹配,但是要连接的服务器的IP地址会发生变化,很难把证书的CN设置成CN。
谢谢您的帮助。
android-security - 如何在 TrustManager 中使用 CertificateException?
我将我的应用程序上传到了 Play 商店,并收到了来自 Google 开发人员的电子邮件,我必须在 https 代码中修改我的句子。我正在使用 TrustManager 函数通过 https 提交数据。我的 url 中有一个有效的 ssl 证书,一切正常。但是我有一个截止日期来修改代码并将 CertificateException 添加到代码中。
谷歌发给我:
信任管理器
您可以在这篇 Google 帮助中心文章中找到有关 TrustManager 的更多信息。
主机名验证器
您的应用正在使用 HostnameVerifier 接口的不安全实现。您可以在这篇 Google 帮助中心文章中找到有关如何解决此问题的更多信息。
这是我的代码:
我希望你能帮助我。谢谢你。
java - X509TrustManager 接口的不安全实现 - Google Play
当我尝试将应用程序上传到 google play 时,我收到一条消息。“接口 x509trustmanager 的不安全实现”。在来自 Google Play 的消息中,它说:
为避免验证 SSL 证书时出现问题,请更改 X509TrustManager 接口中 checkServerTrusted 方法的代码,以便在检测到可疑证书时抛出 CertificateException 或 IllegalArgumentException。
我发现的所有选项都使用 checkValidity 方法来验证证书,但 Google 还添加了:
不要使用 checkValidity 来验证服务器的证书。此方法检查证书的有效性,而不是其安全性。
如何正确更改 checkServerTrusted 方法的代码?我当前的 x509TrustManager 实现: