我有一个使用Oauth 2.0的Ruby on Rails应用程序,使用门卫 gem(1.3.0)实现。
我正在尝试设置通配符重定向uri(例如http://*.mydomain.com/redirected
)。但是,这似乎不可能。在门卫安装路线/oauth/applications
中,如果我输入通配符网址,则显示Must be a valid uri.
是否有配置或方法来修补门卫才能获得此功能?我需要*通配符在注册新应用程序时传递验证,还需要它在客户端授权端点上工作。
答案 0 :(得分:2)
我也遇到过这种情况,想了一会然后检查了规格。这将直接违反Oauth的规范。
3.1.2。重定向端点
完成与资源所有者的交互后, 授权服务器将资源所有者的用户代理引导回 客户端。授权服务器将用户代理重定向到 客户端的重定向端点以前与之建立 客户端注册过程中或授权服务器 提出授权请求。
重定向端点URI必须是由...定义的绝对URI [RFC3986]第4.3节。端点URI可以包括 “application / x-www-form-urlencoded”格式化(根据附录B)查询 组件([RFC3986]第3.4节),添加时必须保留 其他查询参数。端点URI绝不能包括 片段组件。
答案 1 :(得分:0)
在Doorkeeper 2.1.1中删除了对通配符重定向URI 的支持。
您可以在此提交中看到一些推理: https://github.com/doorkeeper-gem/doorkeeper/commit/fd57c475f4fb954faa62d7973d6c8382b5b6401f
这里有一些进一步的讨论: https://github.com/doorkeeper-gem/doorkeeper/pull/437