对门卫重定向URI的通配符支持

时间:2014-09-10 21:40:29

标签: ruby-on-rails oauth doorkeeper

我有一个使用Oauth 2.0的Ruby on Rails应用程序,使用门卫 gem(1.3.0)实现。

我正在尝试设置通配符重定向uri(例如http://*.mydomain.com/redirected)。但是,这似乎不可能。在门卫安装路线/oauth/applications中,如果我输入通配符网址,则显示Must be a valid uri.

是否有配置或方法来修补门卫才能获得此功能?我需要*通配符在注册新应用程序时传递验证,需要它在客户端授权端点上工作。

2 个答案:

答案 0 :(得分:2)

我也遇到过这种情况,想了一会然后检查了规格。这将直接违反Oauth的规范。

  

3.1.2。重定向端点

     

完成与资源所有者的交互后,   授权服务器将资源所有者的用户代理引导回   客户端。授权服务器将用户代理重定向到   客户端的重定向端点以前与之建立   客户端注册过程中或授权服务器   提出授权请求。

     

重定向端点URI必须是由...定义的绝对URI   [RFC3986]第4.3节。端点URI可以包括   “application / x-www-form-urlencoded”格式化(根据附录B)查询   组件([RFC3986]第3.4节),添加时必须保留   其他查询参数。端点URI绝不能包括   片段组件。

Source

答案 1 :(得分:0)

Doorkeeper 2.1.1中删除了对通配符重定向URI 的支持。

您可以在此提交中看到一些推理: https://github.com/doorkeeper-gem/doorkeeper/commit/fd57c475f4fb954faa62d7973d6c8382b5b6401f

这里有一些进一步的讨论: https://github.com/doorkeeper-gem/doorkeeper/pull/437