Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 5951523
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 22, 20262026-05-22T17:32:58+00:00 2026-05-22T17:32:58+00:00

I have a question concerning Rails security. Let’s say we have User model, and

  • 0

I have a question concerning Rails security. Let’s say we have User model, and it has many boolean values for roles, such as admin, director, and so on.

An Admin will definitely want to edit these values on forms, so we’ll want to use attr_accessible to let the admin user do this.

Of course, other uses will be able to edit their User model as well – either editing their profile, or when they invite/add new users to the system themselves. In the case of director’s, we actually want them to set roles that are “lesser” than director, but we don’t want him to be able to set director or admin

Since we expose these controllers that modify users, wouldn’t attr_accessible allow director and admin to be set in this case? This sounds like a very big security hole.

So what is the best way to restrict access?

  1. Set each parameter, one at a time?

  2. Set admin = false and director = false on the create/update actions? The simplest solution, but kind of nasty to have this in the controller.

  3. Use an if statement to see if that user role can edit those attributes and allow it?

  4. Use rails callbacks?, such as before_validation or before_save?

  5. Some other declarative solution?

Thanks

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-22T17:32:59+00:00Added an answer on May 22, 2026 at 5:32 pm

    The upcoming release of Rails 3.1 (there is a release candidate out at the moment) has a new option to attr_accessible that will allow you to define a role that can override it at the controller level by passing without_protection => true.

    You can read more about it here: http://www.enlightsolutions.com/articles/whats-new-in-edge-scoped-mass-assignment-in-rails-3-1

    And the section about attr_accessible in the rails security guide here: http://edgeguides.rubyonrails.org/security.html#countermeasures

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a question concerning unit testing. Let's say that I have several classes
I have a question concerning a generic type parameter. Let's say I have the
I have a small question concerning css styles and javascript / jquery. Lets say
I have a question concerning multiple similair forms on one page. Lets say you
I have some question concerning dllexport, dllimport in C++ in Windows. Let's assume I
I have question concerning a function I created. I would like to show the
I have a question concerning this code which I want to run on QNX:
I have a question concerning subtypes of built-in types and their constructors. I want
I have a question concerning Core Data and how, if at all, Entities get
I have a question concerning number conversion i JS. I have a number like

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.