我正在使用IBM MobileFirst平台7为我的一个客户开发混合应用程序。我使用以下环境设置来保护应用程序,以便在应用程序启动时连接到MobileFirst服务器时,应用程序将从服务器收到安全性质询。
<iphone bundleId="com.AppTest" version="1.0" securityTest="mobileTests">
该应用程序通过向用户显示登录屏幕来处理挑战。我正在为应用程序使用基于适配器的身份验证这很好。
上述设置出现问题:登录屏幕中有一个“新用户注册”链接,用户将用户重定向到注册屏幕。在加载用户注册屏幕时,app正在调用适配器过程以获取一些数据。从注册屏幕调用的适配器过程不受任何安全测试的保护。
即使适配器过程未受保护,上述设置也不允许应用程序在成功进行用户身份验证之前调用该过程。当用户点击注册链接并且他停留在登录屏幕上时,服务器正在向应用程序发出挑战。
MobileFirst身份验证框架是否提供了在使用环境级别保护时明确绕过特定资源的安全检查的任何选项?我已经浏览了平台文档,但找不到任何此类选项。如果有人遇到类似的问题并解决了,请与您分享处理此问题的建议。感谢。
答案 0 :(得分:1)
从注册屏幕调用的适配器过程不是 受到任何安全测试的保护。
这是否意味着特定程序没有分配securityTest
?如果是,您可以尝试将其设置为securityTest="wl_unprotected"
。即使没有明确设置securityTest,仍然在内部分配默认安全性。要禁用该功能,请尝试提及的wl_unprotected
建议。
在此处阅读更多内容:Understanding predefined Worklight authentication realms and security tests
将securityTest值设置为wl_unprotected意味着该资源 不受任何Worklight平台安全保护 机制。此安全测试不能用于保护应用程序 环境和事件源,因为它们都需要用户和设备 身份。通常,此安全测试用于保护适配器 应该可以公开访问的程序 身份验证要求。