设计和基本认证

时间:2010-09-10 21:23:03

标签: ruby-on-rails ruby security devise basic-authentication

请告诉我 - 是否可以为一个或多个控制器/操作禁用warden / devise?

我需要允许具有基本身份验证的请求到其中一个控制器,但每次我发送类似的请求我都会播种消息,我的应用程序不需要basi auth。

我正在编写oauth2提供程序,这是一个问题,允许客户端应用程序使用基本身份验证发送他的creadentials,如此处所述 - http://tools.ietf.org/html/draft-ietf-oauth-v2-08#section-2

2 个答案:

答案 0 :(得分:2)

如果您在before_filter :authenticate_user!中执行ApplicationController,只需在要禁用设计的控制器中执行skip_before_filter :authenticate_user!

答案 1 :(得分:1)

直接回答您的问题 - 如果您不想对特定控制器进行身份验证,那么只需省略或删除'before_filter:authenticate_user!statement in that controller. Similarly, if you want to do authentication for only certain methods in the controller, look at the:仅and:除{{1 }} before_filter`。

如果您希望仅针对特定方法或控制器允许 http身份验证,那么我相信您必须覆盖一些设计方法以仅限制为http auth,因为设计想要成为默认情况下是灵活的,并允许http auth或会话身份验证。