[英]Keycloak Create Client
我正在嘗試使用keycloak-admin-client
創建一個新的 Keycloak 客戶端。
這是我的代碼:
Keycloak keycloak =
KeycloakBuilder.builder()
.serverUrl("http://localhost:8080/auth")
.realm("realm-name")
.grantType(OAuth2Constants.PASSWORD)
.username("admin")
.password("adminPassword")
.clientId("admin-cli")
.resteasyClient(new ResteasyClientBuilderImpl().connectionPoolSize(10).build())
.build();
ClientRepresentation clientRep = new ClientRepresentation();
clientRep.setClientId(clientId);
clientRep.setSecret(UUID.randomUUID().toString());
clientRep.setProtocol("openid-connect");
keycloak.realm("realm-name").clients().create("test-client");
執行此操作時,我收到未經授權的錯誤( javax.ws.rs.NotAuthorizedException: HTTP 401 Unauthorized
),但我知道我的管理員密碼是正確的。
我的用例是我正在使用主 Keycloak 管理員。 我需要能夠僅使用客戶端 API 且無需任何手動步驟來設置 realm、客戶端和用戶(然后是一些配置)。 為了構建 Dockerized CI/CD,我需要設置一個完全自動化的 Keycloak 設置。
值得注意的是,我不需要這是最安全的策略。 我只是想編寫一些代碼,用於自動設置 Dockerize Keycloak 實例以進行某些測試。
在這部分:
Keycloak keycloak =
KeycloakBuilder.builder()
.serverUrl("http://localhost:8080/auth")
.realm("realm-name")
.grantType(OAuth2Constants.PASSWORD)
.username("admin")
.password("adminPassword")
.clientId("admin-cli")
.resteasyClient(new ResteasyClientBuilderImpl().connectionPoolSize(10).build())
.build();
而不是.realm("realm-name")
使用.realm("master")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.