Думаю, вам нужен метод-страж для проверки, разрешено ли пользователю выполнить данное действие. Например, can_upgrade_server?.
Также, после этого вы можете использовать метод guardian.ensure_can_upgrade_server!, который проверяет условие и выбрасывает исключение, что, как мне кажется, именно то, что вам нужно.