是否可以动态更新sails.config
对象而无需重新移动风帆以应用这些更改?
我希望动态更新sails.config.policies
在bootstrap.js
我已设置
sails.config.policies = JSON.parse(myJSONString);
设置值很好,但它们永远不会被应用。
或者,是否有任何方法可以将sails.config files
移动到数据库并让它们从那里加载?
更新
在遵循Andrea Rega的建议之后,我将我的逻辑移出并创建了一个单独的" allowedaccess"政策。然后我添加了一个新模型,它将用户角色映射到路由并将其拉入策略中。然后使用数据库中的role->权限列表检查用户的角色。
答案 0 :(得分:1)
因此,在我看来,更好的方法是将政策层作为基础架构层,将授权管理层作为< strong>应用层。
这是因为您必须能够在运行时更改或配置授权,作为应用功能的一部分,而不是风帆政策是一些静态。
示例可以是策略isFeature1UserEnabled
,其中使用AuthorizationController
来获取给定用户的“feature1”的特定授权
然后在sails.config.policies
中,您将指定方法method1
必须满足一系列政策。
通过这种方法,您可以动态管理所有用户权限,然后委托风帆政策进行验证,并检查所有相关的授权约束。
我希望这可以帮到你