【问题标题】:How to support Client Certificate Mutual Authentication with IBM Worklight 6.2 for Android?如何使用 IBM Worklight 6.2 for Android 支持客户端证书相互认证?
【发布时间】:2015-08-12 06:17:34
【问题描述】:

我对 Android 很陌生,但我一直是移动 webapp 的 Web 开发人员。我们需要将此 web 应用程序包装在 Worklight Android 混合应用程序中。 我们有一个移动 web 应用程序,它使用 X509 证书依赖客户端证书相互身份验证来确保安全。

我们已经有一个 iOS 混合应用程序,它可以执行以下操作:

- Check if Certificate is installed
- Redirect to Certificate Repository
- Download Certificate from the Repo
- Install Cert in App KeyChain
- Redirect to Secured WebApp with Client Cert Authentication

我们通过覆盖 UIViewController 并基于 Apple 的代码创建 CustomHTTPProtocol 在 iOS 中实现了这一点: https://developer.apple.com/library/ios/samplecode/CustomHTTPProtocol/Listings/Read_Me_About_CustomHTTPProtocol_txt.html,提供sn-p有点大。

简单地说:我们只想知道如何在 Android 和 WorkLight 中处理带有客户端证书的网页。 是来自 MainActivity、CordovaWebView 还是 CordovaWebViewClient? 我们不想像这里的代码一样忽略证书: https://www.ibm.com/developerworks/community/blogs/mobileblog/entry/apache_cordova_working_with_certificates_on_android?lang=en

我正在挖掘所有相关的解决方案,但我找不到任何可以提供答案的解决方案。 也许我需要在Android中直接处理HttpsURLConnection,我不确定。

【问题讨论】:

  • 我建议您提供您在 iOS 中所做的工作的 sn-p,以便有人可以将这个想法翻译到 Android。
  • 谢谢内森。我无法提供 sn-p,因为我们只是基于来自 developer.apple.com/library/ios/samplecode/CustomHTTPProtocol/… 的代码,它只是通过检查证书是否在钥匙串中来处理证书。它有点大,我们只是对其进行了修改。我不是 iOS 开发者,它来自一个已经离开的老开发者。它只是工作。

标签: android cordova ssl ibm-mobilefirst


【解决方案1】:

在 Worklight 中,您通过适配器联系您的后端。因此,您可以从您的应用程序调用适配器,然后调用后端。安全等在适配器层处理。 因此,在这种类型的体系结构中,您可以通过定义密钥库(以及要在该密钥库中使用的证书)来配置 Worklight 服务器。当适配器尝试联系已配置相互身份验证的后端时,它将被适配器使用。您可以将后端的 CA 证书添加到运行 Worklight 的应用服务器的信任库中,这样 Worklight 也可以对后端进行身份验证。 所以主要是你需要做到以下几点:

  • 使用 Worklight 适配器联系后端
  • 通过在 worklight.properties 或 JNDI 条目中指定,使用 Keystore 配置 Worklight 服务器
  • 将后端的 CA 证书添加到运行 worklight 服务器的应用服务器的信任库中
  • 在适配器的 xml 文件中提及 sslCertificateAlias、密码等
  • 从应用调用此适配器以到达后端

可以在here找到要在适配器中完成的 Keystore 和 SSL 配置信息。

而且这种方法应该适用于 Android 和 iOS。

【讨论】:

    猜你喜欢
    • 2015-12-26
    • 1970-01-01
    • 2015-09-06
    • 2014-01-11
    • 1970-01-01
    • 2017-01-29
    • 1970-01-01
    • 2010-11-30
    • 2012-09-04
    相关资源
    最近更新 更多