从4.1.1升级Payara后获得Auth失败。至4.1.2

时间:2018-07-16 07:12:12

标签: payara

我将Payara从4.1.1升级到4.1.2.181,现在在调用Auth端点时得到401。我的身份验证端点返回200(确定),但是调用应用程序正在从Payara获取401(据我所知)

父pom.xml:

...
<dependency>
    <groupId>fish.payara.extras</groupId>
    <artifactId>payara-embedded-all</artifactId>
    <version>4.1.2.181</version>
    <scope>provided</scope>
</dependency>
...
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-jaxb</artifactId>
    <version>2.25</version>
    <scope>test</scope>
</dependency>

子项目pom.xml

...
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-json-jackson</artifactId>
    <version>2.27</version>
    <scope>provided</scope>
</dependency>
...

当我切换回版本4.1.1时,问题消失了

请协助我在日志文件中提供更多信息或解决此问题的方法。

更新

  1. 这似乎与使用JWT的4.1.2.181有关?
  2. <jaxrs-roles-allowed-enabled>false</jaxrs-roles-allowed-enabled>添加到glassfisf-web.xml只会在日志文件中发出警告
  3. 我在日志文件中看到以下内容:

    无法加载服务类fish.payara.appserver.roles.api.extension.RolesCDIExtension org.osgi.framework.BundleException:捆绑包fish.payara.appserver.cdi-auth-roles中未解决的约束[374]:无法解决374.0:缺少要求[374.0] osgi.wiring.package; (osgi.wiring.package = fish.payara.cdi.auth.roles)

  4. 我设法打开Jersey的跟踪日志记录,并将以下内容作为日志文件中的最后一条跟踪记录:

    [2018-07-17T14:41:02.968 + 0200] [Payara 4.1] [FINE] [] [org.glassfish.jersey.tracing.general] [tid:_ThreadID = 28 _ThreadName = http-thread-pool: :http-listener-1(2)] [timeMillis:1531831262968] [levelValue:500] [CLASSNAME:org.glassfish.jersey.message.internal.TracingLogger $ TracingLoggerImpl] [METHODNAME:logImpl] [[ 已完成响应状态: 200 / SUCCESSFUL | OK [---- ms]]]

  5. 还发现了这一点:REST Resources secured with Jersey filter not accessible after upgrade from 174 to 181

  6. 降级到Payara 4.1.2.174可以,但是目标服务器可能不支持

  7. 目标服务器上支持
  8. Payara 4.1.2.174

0 个答案:

没有答案