我已经使用Jhipster生成了微服务应用程序。我还生成了一个Eureka注册表,Zuul网关和用于认证的UAA服务器(使用Oauth2)。我想使用授权类型为'password'的身份验证,其中客户端在请求中发送用户名,密码并获取返回的访问令牌,该令牌将用于后续交互。
我能够启动并运行所有东西,还可以创建用户并获取他的访问令牌。但是,当我在没有任何访问令牌的情况下向微服务API发送任何请求时,网关会处理(运行一些过滤器)并将请求转发至微服务API。我期望它返回403错误,要求进行身份验证。 调试时,我看到有一个弹簧'OAuth2AuthenticationProcessingFilter'可以运行并阻止带有过期令牌的任何请求,但是如果不存在令牌,它将允许该请求通过并击中微服务api。
对此我感到困惑,这是否意味着我们需要编写自定义代码才能使oauth2与Jhipster一起使用?我是否应该为此编写自己的过滤器,以检查访问令牌并通过UAA进行验证?浏览Jhipster文档时,我觉得它应该开箱即用。我没有Spring Security或Jhipster的经验,如果这是一个愚蠢的问题,我会为此道歉。