我将部署在 5.0.0.3 worklight 服务器上的 5.0.0.3 worklight 应用程序迁移到 Worklight studio 5.0.6,并在 IPAS 上完成部署。
在 IPAS 上部署成功,我现在尝试从平板电脑执行我的 android 应用程序。
我对身份验证有一些问题:
在 Application Descriptor 中,我使用 securityTest 保护了 application-descriptor.xml 中的 android 应用程序。
我在 authenticationConfig.xml 中定义了领域、securityTest 和 loginModules。我使用 FormBasedAuthenticator 和 NonValidatingLoginModule。
除了我执行challengeHandler.submitSuccess() 之外,所有这些都适用于我的challengeHandler。在这里,在服务器控制台上出现以下错误:
com.worklight.core.auth.ext.AuthenticityLoginModule login FWLSE0127E: 真实性检查失败。
我使用的 SecurityTest 是:CustomerCentricClientApp-strong-mobile-securityTest。这是我的 AuthenticationConfig.xml 文件:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<securityTests>
<webSecurityTest name="CustomerCentricClientApp-web-securityTest">
<testUser realm="PushClientAppRealm"/>
</webSecurityTest>
<mobileSecurityTest name="CustomerCentricClientApp-strong-mobile-securityTest">
<testAppAuthenticity/>
<testUser realm="PushClientAppRealm"/>
<testDeviceId provisioningType="none"/>
</mobileSecurityTest>
</securityTests>
<realms>
<realm loginModule="PushAppClientLoginModule" name="PushClientAppRealm">
<className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
</realm>
<realm loginModule="requireLogin" name="WorklightConsole">
<className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
<onLoginUrl>/console</onLoginUrl>
</realm>
</realms>
<loginModules>
<loginModule name="PushAppClientLoginModule">
<className>com.worklight.core.auth.ext.NonValidatingLoginModule</className>
</loginModule>
<loginModule name="requireLogin">
<className>com.worklight.core.auth.ext.SingleIdentityLoginModule</className>
</loginModule>
</loginModules>
这是我的应用程序描述符的摘录:
<android securityTest="CustomerCentricClientApp-strong-mobile-securityTest" version="1.0">
<worklightSettings include="true"/>
<pushSender key="xxx" senderId="xx"/>
<security>
<encryptWebResources enabled="false"/>
<testWebResourcesChecksum enabled="false" ignoreFileExtensions="png, jpg, jpeg, gif, mp4, mp3"/>
<publicSigningKey>MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCsW8rocRoAK0PElY5DpyN0wkg2CAVA7Ub8KSFDjBwofoWiA7AAD1hlcJJPCRznfFQ8nQEQ7jJAhpuOvmKxvVcRfj7shJ3JZP0yAvh0Lte8DSQ0MASXwfyehmJe9l/KiY5KWM6sDk+4oxcDJ2j2U+mBivR9+msdTaqIOFPP+PBteQIDAQAB</publicSigningKey>
</security>
</android>