0

我正在尝试使用来自我的 Spring Boot 应用程序的客户端凭据流在 Keycloak 中创建一个用户。我在 Keycloak 中创建了一个客户端,并从中获取了 clientId 和 clientSecret(粘贴了配置以供参考)。调用 create 方法时出现重定向错误:找到 HTTP 302。我错过了什么吗?

  Keycloak keycloak = KeycloakBuilder.builder() //
                .serverUrl(serverUrl) //
                .realm(realm) //
                .grantType(OAuth2Constants.CLIENT_CREDENTIALS) //
                .clientId(clientId) //
                .clientSecret(clientSecret) //
                .build();

        // Define user
        UserRepresentation user = new UserRepresentation();
        user.setEnabled(true);
        user.setUsername("fromrest");
        user.setFirstName("rest1");
        user.setLastName("test");
        user.setEmail("fromrest@xxx.com");
        user.setAttributes(Collections.singletonMap("origin", Arrays.asList("demo")));

        // Get realm
        RealmResource realmResource = keycloak.realm(realm);
        UsersResource usersRessource = realmResource.users();

       // Create user
        Response response = usersRessource.create(user);

Exception in thread "main" javax.ws.rs.ProcessingException: javax.ws.rs.RedirectionException: HTTP 302 Found
    at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.filterRequest(ClientInvocation.java:600)
    at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.invoke(ClientInvocation.java:436)
    at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientInvoker.invokeSync(ClientInvoker.java:148)
    at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientInvoker.invoke(ClientInvoker.java:112)
    at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientProxy.invoke(ClientProxy.java:76)
    at com.sun.proxy.$Proxy25.create(Unknown Source)
    at KeycloakAdminClientExample.main(KeycloakAdminClientExample.java:61)
Caused by: javax.ws.rs.RedirectionException: HTTP 302 Found
    at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.extractResult(ClientInvocation.java:189)

在此处输入图像描述

4

0 回答 0