Keycloak删除用户给我一个401未授权的错误

问题描述:

我想从使用keycloak管理客户端API的领域删除用户。Keycloak删除用户给我一个401未授权的错误

我下面从这里一个例子: https://gist.github.com/thomasdarimont/43689aefb37540624e35

这里是我的代码如下所示:

Keycloak kc = KeycloakBuilder.builder().serverUrl("https://localhost:8445/auth") 
     .realm("sensorcloud-auth").username("admin").password("admin").clientId("admin-cli") 
     .clientSecret("b6b4f0ec-9936-46a2-9f40-69c207e2e0f2") 
     .resteasyClient(new ResteasyClientBuilder().connectionPoolSize(10).build()).build(); 
kc.realm("sensorcloud-auth").users().get("a3fdac49-f7eb-4be7-a81f-b48b09a6694c").remove(); 

我可以登录使用用户名admin和密码admin,以keycloak管理控制台,我很确定没有其他参数错别字,但每次当我尝试删除该userId的用户,我将被给予401未经授权的错误。有人能帮我弄清楚发生了什么事吗?

不知道您使用的是哪个版本的keycloak管理客户端API,使用当前的API没有删除操作。

它应该是kc.realm(realmName).users().delete(id)。您可以检查REST API删除用户

+0

嗨,我是用户keycloak 3.1。我尝试过使用kc.realm(realmName).users()。delete(id),但它仍然给我401未经授权的错误。我的猜测是该kc变量的初始化有问题,wildfly不会将我识别为管理员用户。但我不知道如何解决这个问题。 – LebroNan

+0

您是否尝试过使用“master”领域,您可以从keycloak服务器日志获得更多信息 – ravthiru

+0

我没有尝试过,但我不认为这是问题所在。我没有为我的应用程序使用主域,我为我的应用程序创建了这个sensorcloud-auth域。 – LebroNan