Worklight 6.1.0.1,并使用基于Chrome的模拟器启动移动Web应用程序。应用程序和适配器从WL studio部署到WL开发服务器。
我有一个安全的适配器程序,并且我已经使用两种配置进行了测试:
<procedure requestTimeoutInSeconds="20" name="getBaseData" securityTest="Connections-securityTest"/>
<procedure requestTimeoutInSeconds="20" name="getCommunityMembersOf" securityTest="Connections-securityTest"/>
和
<procedure connectAs="endUser" requestTimeoutInSeconds="20" name="getBasetData" securityTest="Connections-securityTest"/>
<procedure connectAs="endUser" requestTimeoutInSeconds="20" name="getCommunityMembersOf" securityTest="Connections-securityTest"/>
getBaseData只是创建活动用户(包括id + pwd供以后使用),并将固定数据返回给应用程序。 getCommunityMemberOf是一个https适配器,用于从后端服务器检索数据。此适配器从活动用户检索id + pwd,并将此信息作为输入提供给https请求。
我使用javascript控制台启动第一个chrome模拟器会话,显示应用程序调用了过程getBaseData。收集并验证凭据,并完成setActiveUser。然后,应用程序调用过程getCommunityMembersOf,此过程调用没有身份验证的进程,如预期的那样。
我为同一个应用程序启动第二个chrome模拟器会话,并且javascript控制台显示调用过程getBaseData没有被质询,并且被处理似乎表明身份验证已完成,表明模拟器会话#1身份验证也满足模拟器会话# 2认证。这是我想要阻止的行为,并且两个模拟器会话都需要独立进行身份验证。感谢任何关于为什么会发生这种情况的建议,以及我可以做些什么来防止这种会话共享。谢谢。
答案 0 :(得分:3)
Chrome正在不同标签之间共享会话,它与Worklight无关。
您可以做的是以隐身模式打开新浏览器以防止共享会话。或者打开另一种浏览器。