Mobile 保护IBM worklight中的应用程序

Mobile 保护IBM worklight中的应用程序,mobile,ibm-mobilefirst,Mobile,Ibm Mobilefirst,我是IBM worklight的新手;我一直在尝试为混合android应用程序实现应用程序级表单验证,但没有成功。 我所做的: 添加 到my application-descriptor.xml,其中try的定义如下: <mobileSecurityTest name="try"> <testDeviceId provisioningType="none" /> <testUser realm="myMobileLo

我是IBM worklight的新手;我一直在尝试为混合android应用程序实现应用程序级表单验证,但没有成功。 我所做的: 添加
到my application-descriptor.xml,其中try的定义如下:

<mobileSecurityTest name="try">
            <testDeviceId provisioningType="none" />
            <testUser realm="myMobileLoginForm" />
 </mobileSecurityTest>

<realm loginModule="requireLogin" name="myMobileLoginForm">
            <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
            <parameter name="login-page" value="login.html" />
</realm>

com.worklight.core.auth.ext.FormBasedAuthenticator
根据我在文档中的理解,这应该将用户重定向到启动时的示例login.html,在那里我可以使用ChallengeHandler管理客户端用户操作。 但是,securityTest=“try”属性根本不起任何作用。 请告诉我,如果我错过了一些重大的事情,这似乎是如此

编辑:我现在得到login.html作为服务器响应,我想我应该用javascript显示它

最终编辑:如果有人遇到类似问题,我在挑战处理程序中做了如下操作:

login\u clientside.isCustomResponse=函数(响应){
document.body.innerHTML=response.responseText;
//警报(“测试”);
返回false;
};


当然,这没有UI部分来获得一个漂亮的登录页面,也没有安全部分。

Worklight提供了一个教程演示以及一个附带的示例,您可以在基于表单的身份验证测试中运行该示例

基于表单的身份验证演示文稿

基于表单的身份验证示例


由于您声明您是Worklight新手,我建议您通读本演示文稿,然后尝试在Worklight Studio中运行该示例。一旦您理解了这些概念并正确运行了示例,那么将这些技术合并到您的项目中应该不会有问题。如果您有任何具体问题,请与我联系。

您是否尝试遵循基于表单的身份验证培训模块和示例项目?您可能没有在客户端代码中实现质询处理程序,或者忘记导入/包含质询处理程序,和/或忘记添加login.html和login.html页面。有关更多详细信息,请参见下面@Jaalger2的答案。@DanielGonzalez感谢您的回答;我将login.html页面从server/conf复制到myApp/common;我没有loginError.html。我应该把它放在哪里?我按照示例做了一个表单,它隐藏了登录表单,并在登录时显示了我的主页内容;但是,我想保护整个应用程序,因为我想可以只修改css属性来查看主页而不登录?是否可以在访问应用程序之前执行登录过程?您可以使用applicationDescriptor内部的securityTest来保护应用程序。如果应用程序在启动时连接,并且应用程序受到安全测试的保护,则用户必须在启动时登录。请在此处查看“身份验证”部分下的身份验证模块:以及信息中心中的安全信息:我确实查看了几次文档-我已删除,现在我在worklight日志中获得login.html作为服务器响应。我认为公司代理造成了问题,因为我在应用程序启动时收到了随机的登录提示。j_安全检查有一半的时间也没有发现,也没有特殊原因。我会在你的时间内把你的答案标记为已被接受,然后自己解决这个问题。