在Kohana 3.2中设置跨站点身份验证的正确方法

时间:2012-12-11 07:36:56

标签: authentication cross-domain oauth-2.0 hmvc kohana-3.2

我目前正在运行两个Kohana 3.2应用程序:

  1. Web服务器
  2. Rest API Server(处理Web身份验证和所有数据库模型)
  3. 我们使用密码granttype / 2-legged oauth2进行身份验证。当有人在Web服务器上执行登录时,会根据Web服务器上设置的Auth :: instance的响应向API服务器发送API身份验证请求。到目前为止,一切正常。

    我们在API服务器上有一个自动crud控制器,但我希望在登录Web服务器后只能将其用于“admin”帐户。我正在尝试找到一种方法将身份验证从Web服务器上的Auth::instance()->logged_in()传递回API服务器,这样只有在您登录Web服务器时才能使用crud控制器。

    有关如何实现这一目标的任何创意建议?主要的挑战是API服务器正在运行ouath2和auth(ORM驱动程序),但Web服务器正在运行基于成功的消费者API登录的自定义Auth驱动程序。

    以下是流程:

    • 用户访问网络服务器
    • 用户登录
    • Web服务器向API服务器发送oath2身份验证请求
    • api服务器访问客户端数据库验证请求,返回 的access_token
    • 如果access_token是,则
    • Web服务器设置Auth::instance()->logged_in()
    • 根据管理员角色显示CRUD链接
    • CRUD链接是API服务器上的控制器
    • [需要验证用户是否已通过身份验证]
    • 显示CRUD控制器(交叉网址链接,不包括HMVC 控制器)

    非常感谢任何帮助。

0 个答案:

没有答案