Ibm mobilefirst 在某些情况下,Worklight应用程序真实性失败

Ibm mobilefirst 在某些情况下,Worklight应用程序真实性失败,ibm-mobilefirst,Ibm Mobilefirst,我们正在使用WL enterprise版本(6.2.0.1)修复包1开发WL应用程序 我们已经在3个月前正确地实现了应用程序的真实性,并且一切正常(authenticationConfig.xml上没有做任何更改) 今天,我们所有的应用程序在这两种环境(开发人员、QA)的应用程序真实性方面都出现故障,WL服务器上出现错误: [3/10/15 14:13:43:821 EDT] 000000d3 AuthenticityL I com.worklight.core.auth.ext.appa

我们正在使用WL enterprise版本(6.2.0.1)修复包1开发WL应用程序

我们已经在3个月前正确地实现了应用程序的真实性,并且一切正常(authenticationConfig.xml上没有做任何更改)

今天,我们所有的应用程序在这两种环境(开发人员、QA)的应用程序真实性方面都出现故障,WL服务器上出现错误:

[3/10/15 14:13:43:821 EDT] 000000d3 AuthenticityL I  

com.worklight.core.auth.ext.appauth.AuthenticityLoginModuleImpl login FWLSE0127E:        
Authenticity check failed for application 'APPNAME'. sharedData = ca.company.AppIDiPhone , challengeData = 514738N882129N341449C605766C744589X0355BCA6S214650C169432N928395XEDA8943BS085337C264942N797462X2B0C6AA2S462207X9035E6C7S . [project Name]
    [3/10/15 14:13:43:853 EDT] 000000d3 LoginContext  W com.worklight.core.auth.impl.LoginContext invokeLoginModule FWLSE0239W: Authentication failure in realm 'wl_authenticityRealm': login fail [project Name]
该错误出现在启动应用程序时,且不一致,发生(1/10)次

AuthenticationConfig.xml:

 <securityTests>
        <customSecurityTest name="CompanyTestmobile">
        <test realm="wl_antiXSRFRealm" step="1"/>
        <test realm="wl_authenticityRealm" step="1"/>
        <test realm="wl_remoteDisableRealm" step="1"/>
        <test realm="wl_directUpdateRealm" mode="perSession" step="1"/>
        <test realm="wl_anonymousUserRealm" isInternalUserID="true" step="1"/>
        <test realm="wl_deviceNoProvisioningRealm" isInternalDeviceID="true" step="2"/>
    </customSecurityTest>

    <webSecurityTest name="CompanyTest">
        <testUser realm="CompanyRealm" />
    </webSecurityTest>
    <customSecurityTest name="SubscribeServlet">
        <test realm="SubscribeServlet" isInternalUserID="true"/>
    </customSecurityTest>           

</securityTests> 

Application-descriptor.xml(适用于iPhone):


我们所有的配置都与WL文档相匹配

PS1:根据我的理解,AppAuthentity将总是失败,或者根本不会失败。为什么它有时失败,有时奏效

PS2:我们服务器上的部署是不可接触的,一旦部署就不能修改。这证实了环境是稳定和安全的


谢谢。

从PMR上看,这似乎是由于应用程序代码同时调用适配器请求触发了竞争条件,导致真实性测试很少失败


客户调整了他们的代码,使其不会造成竞态条件,之后问题将无法再现

1)您是否部署了多个版本的应用程序(即iphone v1.0、v1.1)?2) 仔细检查应用程序是否部署了不正确的开发人员证书或绑定ID 3)如果您使用的是服务器群集,请确保服务器日志中没有其他可疑错误。我们使用的是一个版本的应用程序(1.0)(在WL控制台上验证)。应用程序是使用正确的bundleID(企业证书)部署的,尚未更改。我们使用一个集群和一个节点。我们还验证了数据电源和IHS服务器,所有服务器都在通过连接,没有任何错误。我们回收了集群,但问题仍然出现(1/10)次。如果dev证书或bundleID存在任何问题,应用程序将一直失败。(这个问题也出现在Android上)在你提到的过去3个月里,你对DataPower的配置做过任何更改吗?你能试用DataPower并确认1/10故障不再发生吗?我将使用一个封闭的本地环境,并在iPhone设备上部署该应用程序,该设备将直接连接到我的本地开发服务器。并验证。我可以在Development server而不是enterprise one上验证应用程序真实性吗?不能使用Eclipse Studio插件测试真实性。
<iphone applicationId="AppID" bundleId="ca.company.AppIDiPhone" securityTest="CompanyTestMobile" version="1.0">
    <worklightSettings include="false"/>
    <security>
        <encryptWebResources enabled="true"/>
        <testWebResourcesChecksum enabled="true" ignoreFileExtensions="png, jpg, jpeg, gif, mp4, mp3"/>
    </security>
</iphone>