【发布时间】:2013-09-12 18:40:03
【问题描述】:
我正在尝试构建一个示例应用程序来测试应用程序的真实性,但不幸的是我没有成功。
我正在 Android 设备上进行测试,因此我使用自定义证书对我的应用程序进行了签名,并通过 Worklight 向导将该证书提取到 application-descriptor.xml 中。我还在独立的 WL 服务器上部署了我的项目,而不是使用 Studio。我的移动安全测试如下所示: `
<mobileSecurityTest name="mobileTests">
<testAppAuthenticity/>
<testDeviceId provisioningType="none" />
<testUser realm="MyRealm" />
</mobileSecurityTest>
`
以下是我发现的意外行为:
- 在客户端,尽管顺序如上所示,但用户登录页面位于 AppAuthenticity 检查之前。
- 提交用户表单后,我在服务器端看到以下错误消息,而在此阶段移动应用程序应该是真实的: [12/09/13 20:12:31:649 CEST] 00000070 com.worklight.core.auth.ext.AuthenticityLoginModule E FWLSE0127E:真实性检查失败。 [项目工作灯]
- 在客户端,发生此错误后,我在 logcat 中看到以下 Javascript 错误。我原以为框架会告诉我安全检查失败,并且默认情况下会强制关闭应用程序: 09-12 20:12:30.822: I/dalvikvm(20308): 找不到方法 com.worklight.utils.PaidSecurityUtils.kpg,引用自方法 com.worklight.utils.SecurityUtils.kpg 09-12 20:12:30.827: W/dalvikvm(20308): VFY: 无法解析静态方法 9603: Lcom/worklight/utils/PaidSecurityUtils;.kpg (Landroid/content/Context;[Ljava/lang/String;) [乙
谢谢你告诉我我是否做错了什么。仅供参考,如果在 WL 控制台上我禁用了真实性检查,那么该应用程序当然可以正常工作。
艾蒂安
【问题讨论】:
-
忘了说我使用的是 WL v6
-
Worklight Server 和 Studio 必须具有相同的版本和相同的种类(消费者/企业)。
标签: ibm-mobilefirst worklight-security