如何避免重复的令牌评估?

时间:2019-05-16 14:23:09

标签: spring-boot keycloak

我在Spring Boot 2中使用Keycloak 4.1.0.Final,并且我想使用承载令牌对其余端点/services/{some id}/content/{id}进行身份验证。我已从此处进行设置:https://www.keycloak.org/docs/4.1/securing_apps/index.html#_spring_boot_adapter

在Keycloak服务器上,我创建了一个资源/services/123/content/{id},因此只能授予对id = 123的实体的访问权限。所有其他人都将被拒绝。

现在,当我使用承载令牌调用端点时,该令牌将被评估两次。首先,通过授予访问权限的KeycloakAuthenticatorValve

05-16-2019 16:04:40调试org.keycloak.adapters.authorization.AbstractPolicyEnforcer-授予路径授权

第二,通过拒绝访问的KeycloakAuthenticatedActionsFilter

05-16-2019 16:04:42调试org.keycloak.adapters.authorization.KeycloakAdapterPolicyEnforcer-授权被拒绝-@ [,http-nio-8081-exec-1 @ 304]

我已经看到从AbstractPolicyEnforcer调用的KeycloakAuthenticatorValve使用路径/services/123/content/{id}来评估权限。该路径也在Keycloak服务器上注册。

但是从AbstractPolicyEnforcer调用的KeycloakAuthenticatedActionsFilter仅使用未在Keycloak服务器上注册的上下文路径/services。因此无法授予该权限。

有人知道为什么多次评估令牌吗?可以禁用此功能吗?

0 个答案:

没有答案