流星方法中间件授权



我想在 Meteor 1.5 方法中实现授权。 这些方法将由某些客户端通过 HTTP 终结点调用,而不是由应用程序本身调用。

授权需要处理不同的角色,如管理员、版主(为此我正在使用alanning:roles包)。 为了授权HTTP请求,我正在使用dispatch:run-as-user包。

是否有一种正确的方法来实现某种对每个方法都相同的中间件,通过检查当前用户是否具有调用该方法的适当角色?

还是有更好的方法来授权流星方法?

是否有一种正确的方法来实现某种中间件,通过检查当前用户是否具有调用该方法的适当角色,该中间件对每个方法的工作方式相同?

是的,有一种复杂的方法来声明允许此行为的方法。请参阅 https://guide.meteor.com/methods.html。

这将根据您的需求进行过度设计。授权方法内部调用的最佳中间件是通过在方法主体中调用this.userId来使用的,它代表了meteor领域中最优雅的解决方案。像往常一样在每个方法主体中使用alanning:roles。然后,要实现:

通过 HTTP 终结点的客户端

使用类似于cfs:http-methods的包来实现此目的,请使用Accounts包进行授权。客户端 HTTP 调用需要一个值等于Accounts._storedLoginToken()?token查询参数。

相关内容

  • 没有找到相关文章