【发布时间】:2015-11-24 08:09:56
【问题描述】:
我们正在将 Worklight 6.2 项目迁移到 MobileFirst 7.1 项目。
我们只是将 connectOnStartup 设置为 true。
我们的 MF7.1 iPhone 直接更新运行良好。
但 MF7.1 android 应用程序无法连接到 worklight 服务器。
我们从 logcat 获得了这个信息:
客户端注册失败并出现错误: {"responseHeaders":{},"status":403,"responseText":"/-secure-\n{\"reason\":\"App 真实性安全检查失败\"}/","responseJSON":{"reason":"App 真实性安全检查失败"},"invocationContext":null}
[/apps/services/api/**/android/init] 失败。状态:403,响应: 未定义
我们的 authenticationConfig.xml 如下所示。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<tns:loginConfiguration xmlns:tns="http://www.worklight.com/auth/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<staticResources>
<resource id="receiveSMS" securityTest="SubscribeServlet">
<urlPatterns>/receiveSMS*</urlPatterns>
</resource>
</staticResources>
<securityTests>
<customSecurityTest name="SubscribeServlet">
<test realm="wl_directUpdateRealm" step="1"/>
<test isInternalUserID="true" realm="SubscribeServlet"/>
</customSecurityTest>
</securityTests>
<realms>
<realm loginModule="rejectAll" name="SubscribeServlet">
<className>com.worklight.core.auth.ext.HeaderAuthenticator</className>
</realm>
<realm loginModule="StrongDummy" name="SampleAppRealm">
<className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
</realm>
</realms>
<loginModules>
<loginModule expirationInSeconds="-1" name="rejectAll">
<className>com.worklight.core.auth.ext.RejectingLoginModule</className>
</loginModule>
<loginModule expirationInSeconds="-1" name="StrongDummy">
<className>com.worklight.core.auth.ext.NonValidatingLoginModule</className>
</loginModule>
<loginModule expirationInSeconds="-1" name="requireLogin">
<className>com.worklight.core.auth.ext.SingleIdentityLoginModule</className>
</loginModule>
</loginModules>
</tns:loginConfiguration>
我们的 Worklight 版本是:7.1.0.00-20151107-1647
【问题讨论】: