我正在建立一个多域名网站。因此,特定域中的用户不应从另一个域访问。我想在登录查询中添加一个字段。在login
或onlogin
之前是否有钩子或功能?
答案 0 :(得分:2)
也许validateLoginAttempt可以为您提供帮助。
您可以使用状态或域字段来更新user.profile,例如:
Meteor.users.update({ _id: id }, { $set: {'profile.status': 'deleted'} });
您可以在允许用户登录之前在服务器上进行检查:
Accounts.validateLoginAttempt(function(options) {
if(options.user.profile.status &&
options.user.profile.status === 'deleted'){
throw new Meteor.Error('Not allowed');
}
return true;
});
答案 1 :(得分:1)
登录挂钩之前没有内置的可用于直接阻止访问(但有after)。假设您的多个域共享一个用户集合,那么您有几个选择:
答案 2 :(得分:-2)
我认为我们已经onBefore和onAfter行动以确定用户是否登录。因此,您可以在onBefore操作中提及您的登录页面,之后所有页面都在onAfter action