路由器中的rails骨干功能如何防止黑客攻击

时间:2014-07-22 10:30:45

标签: ruby-on-rails backbone.js coffeescript

我在路由器中有一些功能,我在不同的模型视图之间做关系。但我知道我可以从我的控制台调用这些功能并破坏我自己。如何阻止这些黑客攻击?

示例:

class Alfa.Routers.DropsRouter extends Backbone.Router
  alfa: (bla) ->
    console.log(bla*5)

控制台:

router.alfa(5)

我得到答案

25

在我的真实应用程序中,我向玩家发送怪物属性(健康,力量等),并且玩家与该怪物属性进行战斗。

  send_monster_to_player: (attributes) ->
    @view = new Alfa.Views.Players.IndexView(players: @players)
    @view.send_monster_to_current_player(attributes)

该怎么做才能安全? :)

1 个答案:

答案 0 :(得分:0)

我假设您将路由器视为全局路由器,例如

window.router = new Alfa.Routers.DropsRouter

不要这样做。

相反,我建议使用像RequireJS或Browserify这样的AMD加载程序。

这将帮助您限制对全局变量的使用,如果完成,您可以完全暴露掉零全局变量,这意味着您的代码都不能在控制台中执行。