Keycloack 和 Wildfly,连接在访问令牌生命周期后关闭

问题描述 投票:0回答:1

我使用 Wildfly 30 (Jakarta EE10) 创建了一个 Web 应用程序。身份验证与 Keycloak 一起使用。 我使用注释:

@OpenIdAuthenticationMechanismDefinition(
        providerURI = "${openIdConfig.providerUrl}",
        clientId = "${openIdConfig.clientId}",
        clientSecret = "${openIdConfig.clientSecret}",
        redirectURI = "${openIdConfig.redirectUrl}",
        claimsDefinition = @ClaimsDefinition(callerGroupsClaim = "roles"),
        logout = @LogoutDefinition(redirectURI = "/logout.html", notifyProvider = true)
)

在 web.xml 中,我定义了

<security-constraint>
 <security-role>
,它们都按预期工作。

这工作正常,但在 Keycloak 中的“访问令牌生命周期”的生命周期(默认为 5 分钟)之后,会话将关闭,用户必须再次登录。即使用户不断请求新页面也会发生这种情况。

如何让用户保持登录状态直到会话过期(默认 30 分钟)。

keycloak wildfly jakarta-ee-security-api
1个回答
0
投票

原来我有课:

@ApplicationPath("/rest")
public class JaxRsActivator extends Application {
}

在我实施雅加达安全之前,这曾经运行良好。 如果我删除这个类,应用程序运行良好,5 分钟后不会再出现问题。当然,也没有更多的休息请求。 当我添加注释时

@DeclareRoles({ "Admin",....})

该应用程序也运行良好。当然,休息请求再次正常工作。

所以

@DeclareRoles
丢失了。

© www.soinside.com 2019 - 2024. All rights reserved.