我目前正在运行两个 Kohana 3.2 应用程序:
- 网络服务器
- Rest API Server(处理 Web 身份验证和所有数据库模型)
我们使用密码 granttype/2-legged oauth2 进行身份验证。当有人在 Web 服务器上执行登录时,API 身份验证请求将根据 Web 服务器上设置的 Auth::instance 响应发送到 API 服务器。到目前为止一切正常。
我们在 API 服务器上有一个自动 crud 控制器,但我想让它在登录 Web 服务器后仅对“管理员”帐户可用。我正在尝试找到一种方法将身份验证从Auth::instance()->logged_in()
Web 服务器上传递回 API 服务器,以便仅当您已在 Web 服务器上登录时才能使用 crud 控制器。
关于如何实现这一目标的任何创造性建议?主要挑战是 API 服务器正在运行 ouath2 和 auth(ORM 驱动程序),但 Web 服务器正在运行基于成功的消费者 API 登录的自定义 Auth 驱动程序。
这是流程:
- 用户访问网络服务器
- 用户登录
- Web 服务器向 API 服务器发送 oath2 认证请求
- api 服务器访问客户端数据库验证请求,返回 access_token
Auth::instance()->logged_in()
如果 access_token 存在,Web 服务器设置- 根据管理员角色显示 CRUD 链接
- CRUD 链接是 API 服务器上的控制器
- [需要验证用户在此处已通过身份验证]
- 显示 CRUD 控制器(跨 URL 链接,不包括 HMVC 控制器)
任何帮助将不胜感激。