Ruby on rails 3 Rails 3中的属性级授权

Ruby on rails 3 Rails 3中的属性级授权,ruby-on-rails-3,frameworks,attributes,authorization,Ruby On Rails 3,Frameworks,Attributes,Authorization,我使用的是身份验证,我正在寻找一个授权框架,允许我声明特定模型属性的编辑权限 我的应用程序中有三个不同的角色:老师、家长和学生。学生模型属于家庭。当教师创建学生时,他们可以设置家庭关联。然而,当家长访问学生的编辑页面时,他们不能更改该关联,只能查看该关联 在视图中,根据查看表单的用户很容易更改表单(例如,禁用或不禁用“族选择”输入),但手工制作的表单可以解决这一问题。我需要的是,当有人试图更改不允许更改的属性时,会抛出某种授权异常 我目前正在研究,但它似乎不够细粒度,无法限制对属性的更改,只能将

我使用的是身份验证,我正在寻找一个授权框架,允许我声明特定模型属性的编辑权限

我的应用程序中有三个不同的角色:老师、家长和学生。学生模型属于家庭。当教师创建学生时,他们可以设置家庭关联。然而,当家长访问学生的编辑页面时,他们不能更改该关联,只能查看该关联

在视图中,根据查看表单的用户很容易更改表单(例如,禁用或不禁用“族选择”输入),但手工制作的表单可以解决这一问题。我需要的是,当有人试图更改不允许更改的属性时,会抛出某种授权异常


我目前正在研究,但它似乎不够细粒度,无法限制对属性的更改,只能将模型作为一个整体进行更改。

我最终使用了新功能,尽管它看起来可能无法与接受嵌套属性结合使用。

我意识到我的答案迟了两年才出来。值得一提的是,您需要一个足够细粒度的授权框架

OASIS的标准XACML正好提供了这一点。它可以处理任意数量的属性

请看我的详细回答: