如何验证KeyCloak userModel中是否存在用户

时间:2019-07-28 09:47:49

标签: keycloak

我正在尝试编写自定义身份验证器。因此,在我的action()方法中,我试图根据那里的userId查找现有用户。

import org.keycloak.models.UserModel;
.....
@Override
    public void action(AuthenticationFlowContext context) {
        System.out.println("*******I AM INSIDE THE ACTION CONTROLLER***********");

        String userId = "8837fe42-0ec7-4117-aedb-75746078a101";

        //Code to look for user with userId then validate .
    }

我是keycloak的新手,当我尝试使用UserModel时说空指针异常

瑞格斯

1 个答案:

答案 0 :(得分:1)

您必须先获取KeycloakSession对象,然后按以下方式检索UserProvider

UserModel user = context.getSession().users().getUserById(userId, context.getRealm());

KeycloakSession是访问各种应用程序服务的起点。