我在Spring中有一个简单的应用程序可以使用Keycloak Adapter登录。

这是我的代码:

@RequestMapping(value = "/admin", method = RequestMethod.GET)
public String handleAdminRequest(Principal principal, Model model) {
    KeycloakPrincipal pr = (KeycloakPrincipal) principal.getUserPrincipal();
    return "admin";
}


现在我有问题了:

org.keycloak.adapters.springsecurity.token.KeycloakAuthenticationToken cannot be cast to org.keycloak.KeycloakPrincipal


有人可以告诉我为什么会这样吗?而我该如何解决呢?

谢谢

最佳答案

我已经通过更改pom.xml解决了类似的问题:

    <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-admin-client</artifactId>
        <version>${keycloak.version}</version>
        <scope>provided</scope>
    </dependency>


提供范围时,与服务器上的库没有冲突。

关于java - 我无法在KeycloakAdapter中启动主体,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39979660/

10-15 23:06