【问题标题】:Sentry-android self signed SSL certificate (SSLPeerUnverifiedException)Sentry-android 自签名 SSL 证书 (SSLPeerUnverifiedException)
【发布时间】:2021-09-29 21:41:54
【问题描述】:

使用 Sentry Android SDK (io.sentry:sentry-android:5.0.1) - 有没有办法通过 SSL 证书的自定义 HostnameVerifier 或 SHA-256/SHA-1 来授权使用自签名证书?

目前我得到:

javax.net.ssl.SSLPeerUnverifiedException: Hostname xxxx not verified:
certificate: sha1/xxxx
DN: CN=xxxx
subjectAltNames: []

我已经在 networkSecurityConfig XML 文件中为该域传递了 SHA-256,但它似乎没有考虑到这一点。

【问题讨论】:

    标签: android sentry


    【解决方案1】:

    您可以通过选项设置一项:

    https://github.com/getsentry/sentry-java/blob/1f704cb3e630cb753ce0ac3390b6da5377c9e6ea/sentry/src/main/java/io/sentry/SentryOptions.java#L1193-L1195

    SentryAndroid.init(o -> {
      o.setHostnameVerifier(...);
      o.setDsn(...);
      // other options
    });
    

    请注意,如果您要按照我上面的建议以编程方式进行初始化,则不应再通过 AndroidManifest.xml meta-data 添加配置。

    有关此的文档在这里: https://docs.sentry.io/platforms/android/configuration/manual-init/

    【讨论】:

    • 谢谢,在我可以提供的文档中完全错过了主机名验证器,我想我在查看 lib 代码时忽略了这一点。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2017-09-12
    • 2020-05-29
    • 2012-11-01
    • 1970-01-01
    • 2014-03-24
    • 2015-03-11
    • 2020-10-25
    • 2015-09-13
    相关资源
    最近更新 更多