在一个项目中部署弹簧靴和弹簧安全装置

时间:2017-05-30 17:29:13

标签: java spring spring-mvc spring-boot spring-security

我获得了春季启动JWT身份验证服务,并被要求使用它来保护我正在构建的Restful Web服务。在spring.io教程之后,我收集到您可以在一个项目中构建多个Spring启动应用程序。具体来说,两个模块 security rest 都有一个Application.java类来启动应用程序。我不清楚的是

  1. 我可以假设,如果两个应用程序在同一服务器中启动,则安全应用程序将自动拦截调用 rest controller 以检查auth / authorize。如果是这种情况,那么我假设在安全性或休息时不需要进一步修改代码吗?
  2. 我假设上面第1点中的每个应用程序在部署到服务器时可以单独启动,而在IDE中,两者都会同时启动?

  3. 如果我要在两台独立的服务器上运行,那么其余的api调用是否需要转移到安全性体系结构中,是什么样的例子?

1 个答案:

答案 0 :(得分:0)

  1. 没有。如果您有两个完全独立的应用程序,则第二个应用程序中的任何代码都不会截获对一个应用程序的请求。如果要在REST服务中使用安全性配置,则必须为其配置。 Spring Security提供了必要的机制。安全应用程序用于保存用于身份验证的数据,例如存储用户名和密码,并提供检查两者的机制。但是,如果要保护其他应用程序的端点,则必须适当地配置这些应用程序。

  2. 不一定。如果要在IDE中运行这两个应用程序,则必须启动这两个应用程序。

  3. 这取决于您使用的安全机制。如果您使用例如OAuth,对服务的请求需要已经令牌然后通过安全服务验证,或者(如果是带有GUI的Web应用程序)将被重定向到安全服务以登录,然后重定向回Web应用程序使用令牌,然后可以进一步使用。