首页 > 解决方案 > 由多个 webapps 共享的 restapi 的身份验证

问题描述

我有 3 场战争:和a.war,它们在同一个 tomcat 中。b.warrestful.war

restful.war是一个 spring boot,spring mvc 项目,它提供了对a.warb.war.

a.war并且b.war是独立的webapps,他们都有自己的登录系统,他们的用户存储在不同的数据库表中,例如用户a.war存储在tableA,用户b.war存储在tableB

对于a.warb.war,有两个地方可以调用restful.war

  1. restful.war从java代码中调用代码a.warb.war通过org.apache.http.impl.client.DefaultHttpClient.execute()
  2. 通过 ajax从 html / restful.warjsp 页面调用a.warb.war

我想要的是:只有登录a.warb.war可以打电话的用户,restful.war我该怎么做?

标签: javaspringspring-bootrestrestful-authentication

解决方案


在“restful”应用程序中实现基本身份验证,并使用适当的“授权”标头从“a”和“b”调用其端点。所以这将解决如果“restful”收到来自“a”或“b”的调用的问题,它会响应,否则会抛出 403 禁止错误。


推荐阅读