Взгляните на active_scaffold, admin_data и typus (все доступно на github). Все они являются плагинами, которые упрощают создание административной части таким образом, чтобы вы могли легко отделить администрирование от взаимодействия с пользователем. Лично мне нравится typus, но он требует, чтобы у вас была таблица typus_users, которая отделена от таблиц других пользователей, что может не подходить для всех.
С другой стороны, если вы не хотите ничего сложного или предпочитаете создавать его самостоятельно с нуля, простой before_filter должен помочь ...