我正在开发基于spring-java的全栈Web应用程序。该应用程序当前分为两个项目,每个项目在构建时生成一个war文件。一个项目(称为UI)充当应用程序的前端。 UI没有太多的业务逻辑。主要是HTML模板,JS / CSS和其他资源。另一个项目(称为服务器)在提供身份验证,业务逻辑,数据库服务,外部世界的REST API等方面具有很大的重要性。
我遇到了很多问题,尤其是在整个应用程序中进行安全工作时,给定UI项目没有直接的方法来验证用户或检查用户角色等.UI依赖于调用REST OAuth2密码流到服务器进行身份验证。因此身份验证本身运行正常,但我很难检查用户访问角色或UI项目中任何代码中的任何其他细粒度权限。
在我深入挖掘并尝试使这一切全部工作之前,这里有一些关于大师的问题: a)这种设计是构建网络应用程序的可接受方式之一吗? b)如果我试图在一场战争中捆绑这两个项目,是否有任何我应该注意的问题?
我希望这是重点,但如果您需要更多细节,请告诉我,我很乐意添加颜色。
答案 0 :(得分:0)
尝试另一种分离概念:
模块2取决于模块1.所有安全性都转到模块2。
希望它有所帮助。