Keycloak删除用户给我一个401 Unauthorized错误

时间:2017-07-31 14:05:45

标签: wildfly-10 keycloak

我正在尝试使用keycloak admin client api从域中删除用户。

我在这里关注一个例子: 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未经授权的错误。有人可以帮我弄清楚发生了什么吗?

3 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:0)

当承载者/用户的访问令牌的iss字段上标记的主机名的大小写大小写不同(即,用于将HTTP请求发布到密钥库的令牌端点的URL的大小写不同)时,我们不断收到HTTP 401状态代码响应。 / p>

答案 2 :(得分:0)

在创建Keycloak实例时,领域应该是主领域。 使用Master Realm创建实例后,可以使用代码删除用户。