我无法在KeycloakAdapter中创建一个Principal

时间:2016-10-11 14:30:11

标签: java spring spring-security keycloak

我在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

有人能告诉我为什么会这样吗?我怎么解决这个问题?

由于

1 个答案:

答案 0 :(得分:1)

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

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

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