1

特定のユーザー ロールに対して明示的に承認されていないすべてのルートが拒否されるように、Rails アプリケーションを完全にロックダウンしたいと考えています(403)。

私はこのアプリを継承しているため、フレームワークの理解が不十分ですが、現在は反対のようです。明示的に閉じない限り、すべてが開いています。

私はauthorization_rules.rbファイルを持っていて、ゲストロールに権限を与えていませんが、ログインしなくてもページにアクセスできます。ページごとに移動して、ページに承認が必要であることを確認できると思います(filter_access_to? 、しかし、私は1つを逃すかもしれません。すべてをシャットダウンして、明示的に許可した場合にのみアクセスを開くにはどうすればよいですか?

これは Rails 2.3.5 を使用しています。

4

1 に答える 1

1

アプリがアクセスを制限するために使用すると仮定すると、before_filterアプリケーション コントローラーで before フィルターを移動し、個々のコントローラーで特定のアクションをスキップできます。

#app/controllers/application_controller.rb
before_filter :filter_access

#app/controllers/your_specific_controller.rb
skip_before_filter :filter_access, :only => [:action1_accessible_by_guest, :action2_accessible_by_guest]
于 2011-08-16T04:57:08.327 に答える