1

我正在开发一个基于 spring-java 的全栈 Web 应用程序。该应用程序当前分为两个项目,每个项目都会在构建时生成一个war文件。一个项目(称为 UI)用作应用程序的前端。UI 中没有太多的业务逻辑。主要是 HTML 模板,以及 JS/CSS 和其他资源。另一个项目(称为服务器)在提供身份验证、业务逻辑、数据库服务、面向外部世界的 REST API 等方面具有很大的重要性。

我遇到了很多问题,尤其是在整个应用程序中进行安全工作时,因为 UI 项目没有直接的方法来验证用户或检查用户角色等。UI 依赖于调用 REST OAuth2 密码流到服务器进行身份验证。所以身份验证本身工作正常,但我很难检查用户访问角色或 UI 项目中任何代码中的任何其他细粒度权限。

在我深入挖掘并尝试使这一切正常工作之前,这里有几个问题要问大师:a) 这种设计是构建 Web 应用程序的可接受方式之一吗?b) 如果我试图将这两个项目捆绑在一场战争中,我应该注意哪些问题?

我希望这是重点,但如果您需要更多细节,请告诉我,我很乐意添加颜色。

4

1 回答 1

0

尝试另一个分离概念:

  • 模块 1 = 核心业务逻辑 ->在构建时生成jar文件
  • 模块 2 = web -> 在构建时生成战争文件

模块 2 依赖于模块 1。所有安全内容都转到模块 2。

希望能帮助到你。

于 2013-10-09T08:09:39.843 回答