2

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

我正在尝试设置通配符重定向 uri(例如,http://*.mydomain.com/redirected)。然而,这似乎是不可能的。在 doorkeeper-mounted route /oauth/applications,如果我输入通配符 url 它会说Must be a valid uri.

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

4

2 回答 2

2

我也遇到了这个,想了一会儿,然后检查了规范。这将直接违反 Oauth 的规范。

3.1.2。重定向端点

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

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

资源

于 2015-03-27T14:00:25.747 回答
1

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

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

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

于 2016-04-19T16:36:16.550 回答