使用stormpath.groupsRequired中间件调用,
router.get(' /',stormpath.loginRequired,stormpath.groupsRequired([' org1-admin']),function(req,res){ res.render(' index',{}); });
我无法对'org1-admin'角色进行硬编码,我有哪些选择?如果我将其放入会话中,则会话不适用于中间件。有什么想法吗?
根据初始启动请求网址中传递的org1参数和从配置条目读取的“admin”角色,将在启动应用时识别用户角色“org1-admin”。
首次启动后,此角色应可用于后续路由授权。感谢您的反馈!
答案 0 :(得分:2)
如果要检查的组是基于每个请求确定的,那么您需要修改流程以使用groupsRequired
中间件更像功能:
app.get('/', stormpath.loginRequired, function (req, res) {
var group = 'foo'; // grab the group from your request context
stormpath.groupsRequired([group])(req,res,function(){
// If we got here, the user is in the group. Otherwise the groupsRequired middleware would have ended the response with 403
res.render('index', {});
});
});
我希望这有帮助!这是一个很好的用例,我想在这个库中添加一些东西,这样可以更容易地做到这一点。