This is an automated email from the ASF dual-hosted git repository.
ofuks pushed a commit to branch ofuks-keycloak-redirecturi
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
The following commit(s) were added to refs/heads/ofuks-keycloak-redirecturi by
this push:
new 11b98ae Added possibility to use multiple keycloak redirecturi
11b98ae is described below
commit 11b98ae69e25c3a74e4057dbe711503eb5b43c20
Author: ofuks <[email protected]>
AuthorDate: Tue Oct 1 10:57:21 2019 +0300
Added possibility to use multiple keycloak redirecturi
---
.../com/epam/dlab/backendapi/resources/KeycloakResource.java | 9 +++++----
.../com/epam/dlab/backendapi/service/KeycloakServiceImpl.java | 5 ++++-
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
index 9d4d66c..e719215 100644
---
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
+++
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
@@ -19,7 +19,7 @@ import static java.lang.String.format;
@Path("/oauth")
public class KeycloakResource {
- private static final String LOGIN_URI_FORMAT =
"%s/realms/%s/protocol/openid-connect/auth?client_id=%s" +
+ private static final String LOGIN_URI_FORMAT =
"%s/realms/%s/protocol/openid-connect/auth?client_id=%s&redirect_uri=%s" +
"&response_type=code";
private static final String KEYCLOAK_LOGOUT_URI_FORMAT =
"%s/realms/%s/protocol/openid-connect/logout" +
"?redirect_uri=";
@@ -43,7 +43,8 @@ public class KeycloakResource {
format(LOGIN_URI_FORMAT,
keycloakConfiguration.getAuthServerUrl(),
keycloakConfiguration.getRealm(),
-
keycloakConfiguration.getResource());
+
keycloakConfiguration.getResource(),
+ redirectUri);
logoutUri =
format(KEYCLOAK_LOGOUT_URI_FORMAT,
keycloakConfiguration.getAuthServerUrl(),
@@ -52,8 +53,8 @@ public class KeycloakResource {
@GET
@Produces(MediaType.TEXT_PLAIN)
- public Response getLoginUri() {
- return Response.ok(loginUri)
+ public Response getLoginUri() throws URISyntaxException {
+ return Response.ok(new URI(loginUri).toString())
.build();
}
diff --git
a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
index aaf6c02..dffd112 100644
---
a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
+++
b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
@@ -20,11 +20,13 @@ public class KeycloakServiceImpl implements KeycloakService
{
private static final String URI =
"/realms/%s/protocol/openid-connect/token";
private final Client httpClient;
private final KeycloakConfiguration conf;
+ private final String redirectUri;
@Inject
public KeycloakServiceImpl(Client httpClient,
SelfServiceApplicationConfiguration conf) {
this.httpClient = httpClient;
this.conf = conf.getKeycloakConfiguration();
+ this.redirectUri =
conf.getKeycloakConfiguration().getRedirectUri();
}
@Override
@@ -55,7 +57,8 @@ public class KeycloakServiceImpl implements KeycloakService {
private Form accessTokenRequestForm(String code) {
return new Form()
.param("grant_type", "authorization_code")
- .param("code", code);
+ .param("code", code)
+ .param("redirect_uri", redirectUri);
}
private Form refreshTokenRequestForm(String refreshToken) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]