【发布时间】:2012-10-30 09:04:14
【问题描述】:
我正在处理一个项目,客户要求我使用 OAuth 来保护我构建的一些自定义服务。使用无身份验证和会话身份验证,我已经让一切工作完美,但使用 OAuth 会使整个事情崩溃。我还没有找到任何真正好的分步教程。
基本上我已经在 D6 上安装了 Services 6.x-3.1 和 OAuth 6.x-3.0-beta4 模块。我使用this documentation 创建了一个 oauth 上下文。然后我设置了一个虚拟用户,因为我只想为我的所有客户创建一组消费者凭据。我将上下文分配给用户和服务。我使用 http://mydomain/oauth/authorized 作为回调 url。
为了测试我使用http://term.ie/oauth/example/client.php 连接。我使用端点http://mydomain/oauth/request_token。我将响应标记添加到适当的字段。然后我将端点更改为http://mydomain/oauth/authorize。它带我到一个页面,我必须单击以允许连接。我被带到了http://mydomain/oauth/authorized 页面,在该页面上我收到了一条成功消息。
现在我将端点更改为http://mydomain/oauth/access_token,并收到带有新令牌的响应。根据these instructions,我替换了新的访问令牌并将端点更改为http://mydomain/myserviceendpoint。它使用 GET 请求连接并返回
401 Unauthorized:消费者无权访问此 服务。
感觉好像我错过了什么。系统中只有一个上下文,它被分配给消费者和服务。消费者密钥和秘密与访问令牌一起是最终 URL 的一部分。我查看了权限,但找不到任何不合适的地方。我什至将我的服务更改为只为 hook_services_access 返回 TRUE 以绕过权限。
有什么想法吗?
【问题讨论】:
-
您的问题解决了吗?我遇到了同样的问题,找不到文件。
标签: drupal oauth drupal-6 access-control