michealAtmi
michealAtmi

Reputation: 1042

Searching users in Keycloak from Java code

I am using Spring Boot, Keycloak 10, java 8 and keycloak-admin-client jar. I am able to get user, his groups and roles.

When it comes to search I see different search method options for example I could :

 List<UserRepresentation> search = getKeycloakInstance().realm("my-realm").users()
                .search("username");

https://www.keycloak.org/docs-api/10.0/javadocs/org/keycloak/admin/client/resource/UsersResource.html

But what i need to do i to write couple of methods:

I dont' see such possibilities in keycloak-admin-client, or it is possible of what else should I use instead of keycloak-admin-client ?

Upvotes: 8

Views: 13940

Answers (1)

YuliiaZ
YuliiaZ

Reputation: 221

Unfortunately, keycloak-admin-client doesn't provide lots of search options.

How to find users by role:

RoleResource roleResource = getKeycloakInstance().realm("realm_name")
                          .roles().get("role_name");  
roleResource.getRoleUserMembers();

How to find all users in the group:

getKeycloakInstance().realm("realm_name").groups().group("your_group").members();

How to find users by username, firstName, lastName, email:

getKeycloakInstance().realm("my-realm").users()
            .search("username", "lastName", "email");

If it's okay for you, try to use Keycloak Admin REST API to get more search opportunities.

Upvotes: 12

Related Questions