Worklight身份验证:多个领域

时间:2013-05-21 11:07:08

标签: ibm-mobilefirst

想要检查这种方法是否合理。乍一看似乎有效。

场景是我们有不同类别的用户,在验证他们的凭据时我们可以确定他们的类。我们计划建立一个“Master”领域来管理身份验证和一些我们用来控制对特定适配器程序的访问的子领域,例如“Gold”。

然后我们可以用realm Master保护procedureOrdinary(),使用realm Gold保护procedureSpecial()。

在Master身份验证代码(派生自DoubleStepAdapter示例)中,我们可以编写

WL.Server.setActiveUser("Master", userIdentity);
if ( some criteria are met ) 
    WL.Server.setActiveUser("Gold", userIdentity);

我们从未真正为Gold领域设置挑战处理程序,对领域的身份验证是通过Master领域处理的。

这个想法存在任何问题。

1 个答案:

答案 0 :(得分:2)

技术上 - 它会起作用。但是,这里的一个重要假设是用户在进行身份验证之前永远不会尝试访问受“gold”域保护的过程。为了克服这个问题,我建议采用以下方法 - 您需要为每个领域定义登录功能和注销功能。确保所有登录函数都返回相同的JSON片段(或在所有领域中使用相同的登录功能)。这种方式与领域触发身份验证无关 - 您将始终获得相同的JSON作为挑战,并且您的应用知道如何处理它。