0
我想限制用户范围,一旦通过身份验证,特定的命名空间。但他们将是动态的(即不是一条命名路线)。例如:设计current_user vs user_session
/rails/redteam/
/rails/blueteam/
/rails/greenteam/
或或许仅仅:
/rails/
...or...
/
如果我们知道他们的“团队”则不能,不知怎的,假设在路由?
如何最好地设置和安全地处理这个?我应该在user_session中存储团队名称吗?或者,查询他们的组的current_user并验证它是否与before_filter中的已知组相匹配?
路线本身呢?基本上荣耀的ID,也许是一种固定的种类?不知道“Rails的方式?”
btw-我知道授权宝石,如CanCan
和decl_auth
但试图避免它们的复杂性,如果可能的话,因为我是一个新手,如果这还不够明显。
有点什么我害怕......我真的只是寻找一种*简单*的方式来防止用户修改(或查看此事)任何其他团队的数据。我所看到的或者至少了解授权宝石的是,他们似乎*更多地面向特定的角色*(管理员,用户,主持人等),而不是关于访问权限或*所有权*。我做了一个不正确的假设?如果是这样,也许你可以推荐一个宝石... – Meltemi 2010-12-14 21:58:04
随着坎肯斯它是所有关于能力。 “我能够:更新这个对象”。你如何实现这个能力取决于你 – 2010-12-14 22:17:29
我只使用'declarative_authorization'。 CanCan现在很受欢迎,据说易于使用 - 我会从此开始。 – zetetic 2010-12-14 22:38:10