设计Web平台身份验证

时间:2013-08-05 10:32:55

标签: java api google-app-engine rest shiro

在构建完整的Web平台(例如商店)时,我遇到了一些架构问题。考虑使用Java,Google App Engine(GAE),Shiro和Restful api的

考虑我拥有该平台的这3个主要组件:

  • 前端用户界面
  • 管理员界面
  • 后端

这3个组件都作为GAE平台中的单独应用程序运行。

前端 ui指的是“用户”用作主要UI与系统交互的UI,使用Javascript设计并通过Javascript调用后端

管理员用户界面是指管理员用来管理平台,用户及其内容的用户界面。

后端,是Front-end UI和Admin-UI连接的Restful服务器/服务,它公开了/user api和/admin api和api完成所提供的Web服务的实际逻辑。

我的问题是,身份验证适合它,如果我将身份验证放在后端,那么如何使用前端身份验证。假设用户通过电子邮件或社交登录(oauth等)登录我是否需要提供前端自己的身份验证然后转发到后端或前端这应该只是UI和所有操作,如登录/注销必须通过后端。

如果我使用Shiro,怎么能实现。我真的更喜欢前端UI尽可能小,甚至只是单页应用程序(SPA)或类似的东西。有了这个,在身份验证方面,前端UI和后端的绑定应该是什么(考虑到它们都是不同的GAE应用程序)

1 个答案:

答案 0 :(得分:2)

更多地考虑这个提议而不是答案。我知道你的问题是关于GAE的Java版本,但是你总能受到其他实现的启发。 Gae-init是一个Web应用程序框架,它演示了大多数良好实践。作为贡献者,我发现它提炼了过去几年的知识,是初始化大规模Web应用程序的一个很好的起点。我相信你不会遇到Python实现的任何问题;)