Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(jans-keycloak-integration): update kc saml integration into ce and cn #8776 #8806

Merged
merged 48 commits into from
Jun 28, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
ffe3dbe
fix(jans-linux-setup): improper scim configuration for jans kc #8210
uprightech Apr 3, 2024
76e0414
Merge remote-tracking branch 'origin/main'
uprightech Apr 8, 2024
97f3c02
Merge remote-tracking branch 'origin/main'
uprightech Apr 16, 2024
fadf1f2
chore(jans-keycloak-integration): bump kc version to 24.0.0 #8315
uprightech Apr 16, 2024
8bde8d5
feat(jans-keycloak-integration): keycloak protocol mapper
uprightech Apr 30, 2024
91021f8
Merge remote-tracking branch 'origin/main' into protocol-mapper
uprightech Apr 30, 2024
0273af8
feat(jans-keycloak-integration): remove references to jans standalone…
uprightech May 1, 2024
c021a22
Merge remote-tracking branch 'origin/main' into protocol-mapper
uprightech May 6, 2024
10a0162
feat(jans-keycloak-integration): experimental protocol mapper for kc …
uprightech May 30, 2024
0f1c5a4
feat(jans-keycloak-integration): added dependencies for protocol mapp…
uprightech May 30, 2024
a089c83
feat(jans-keycloak-integration): experimental protocol mapper #8614
uprightech May 30, 2024
aa6e65d
feat(jans-keycloak-integration): experimental protocol mapper #8614
uprightech May 30, 2024
6e6e085
feat(jans-keycloak-integration): janssen spi bundle #8614
uprightech May 31, 2024
c006ad2
feat(jans-keycloak-integration): janssen spi bundle #8614
uprightech May 31, 2024
6e99863
feat(jans-keycloak-integration): enhancements to job-scheduler #8614
uprightech Jun 18, 2024
2367adb
feat(jans-keycloak-integration): keycloak integration enhancements #…
uprightech Jun 18, 2024
a839e12
feat(jans-keycloak-integration): spi bundle #8614
uprightech Jun 18, 2024
79d3255
feat(jans-keycloak-integration): keycloak integration enhancements #8614
uprightech Jun 18, 2024
76e79f3
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
4f453ab
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
abf22ed
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
a67f977
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
7e4567e
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
7ec45bd
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
88eac7f
Merge remote-tracking branch 'origin/main' into issue_8614
uprightech Jun 18, 2024
086808d
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
f444ea1
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
92ee6d2
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
f25ff29
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 18, 2024
a84d52a
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 19, 2024
b4459c1
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 19, 2024
78920ff
Merge remote-tracking branch 'origin/main' into issue_8614
uprightech Jun 20, 2024
db62d0f
feat(jans-keycloak-integration): enhancement to jans-keycloak-integra…
uprightech Jun 20, 2024
c405477
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 20, 2024
0870995
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 24, 2024
64575c7
Merge remote-tracking branch 'origin/main' into issue_8614
uprightech Jun 24, 2024
b571739
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 24, 2024
1a1de0f
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 24, 2024
f609351
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 24, 2024
d5f9221
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
uprightech Jun 24, 2024
d78a5c4
feat(jans-keycloak-integration): update kc-saml integration installat…
uprightech Jun 25, 2024
4f7f4ed
feat(jans-keycloak-integration): update kc-saml integration installat…
uprightech Jun 25, 2024
4532319
feat(jans-keycloak-integration): update kc-saml integration installat…
uprightech Jun 25, 2024
aaa0046
feat(jans-keycloak-integration): update kc-saml integration installat…
uprightech Jun 27, 2024
466f996
feat(jans-keycloak-integration): update kc-saml integration installat…
uprightech Jun 27, 2024
211ba36
Merge remote-tracking branch 'origin/main' into issue_8776
uprightech Jun 27, 2024
8cdc1a1
Merge remote-tracking branch 'origin/main' into issue_8776
uprightech Jun 28, 2024
98f2213
fix(jans-keycloak-integration): fix build issue after bumping keycloa…
uprightech Jun 28, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat(jans-keycloak-integration): enhancements to jans-keycloak-integr…
…ation #8614

* moved authenticator spi to spi module
* minor refactoring to the authenticator spi

Signed-off-by: Rolain Djeumen <uprightech@gmail.com>
  • Loading branch information
uprightech committed Jun 18, 2024
commit 4f453aba2366746f40a9285d081f8a3de50e6b89
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package io.jans.kc.oidc;

public interface OIDCAccessToken {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
package io.jans.kc.oidc;

import java.util.List;
import java.util.ArrayList;

public class OIDCAuthRequest {

private String clientId;
private String state;
private String nonce;
private List<String> scopes;
private List<String> responseTypes;
private String redirectUri;

public OIDCAuthRequest() {

this.clientId = null;
this.state = null;
this.nonce = null;
this.scopes = new ArrayList<String>();
this.responseTypes = new ArrayList<String>();
this.redirectUri = null;
}

public String getClientId() {

return this.clientId;
}

public void setClientId(String clientId) {

this.clientId = clientId;
}

public void setState(String state) {

this.state = state;
}

public final String getState() {

return this.state;
}

public void setNonce(String nonce) {

this.nonce = nonce;
}

public final String getNonce() {

return this.nonce;
}

public void addScope(String scope) {

this.scopes.add(scope);
}

public final List<String> getScopes() {

return this.scopes;
}

public void addResponseType(String responseType) {

this.responseTypes.add(responseType);
}

public final List<String> getResponseTypes() {

return this.responseTypes;
}


public void setRedirectUri(String redirectUri) {

this.redirectUri = redirectUri;
}

public String getRedirectUri() {

return this.redirectUri;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package io.jans.kc.oidc;

public interface OIDCMetaCache {
public void put(String issuer, String key , Object value);
public Object get(String issuer, String key);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package io.jans.kc.oidc;

public class OIDCMetaCacheKeys {
public static final String AUTHORIZATION_URL = "oidc.authorization.url";
public static final String TOKEN_URL = "oidc.token.url";
public static final String USERINFO_URL = "oidc.userinfo.url";
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package io.jans.kc.oidc;

public class OIDCMetaError extends Exception {

public OIDCMetaError(String message) {
super(message);
}

public OIDCMetaError(String message, Throwable cause) {
super(message,cause);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package io.jans.kc.oidc;

public interface OIDCRefreshToken {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package io.jans.kc.oidc;

import java.net.URI;

public interface OIDCService {

public URI getAuthorizationEndpoint(String issuerUrl) throws OIDCMetaError;
public URI getTokenEndpoint(String issuerUrl) throws OIDCMetaError;
public URI getUserInfoEndpoint(String issuerUrl) throws OIDCMetaError;
public URI createAuthorizationUrl(String issuerUrl, OIDCAuthRequest request) throws OIDCMetaError;
public OIDCTokenResponse requestTokens(String issuerUrl, OIDCTokenRequest tokenreq) throws OIDCTokenRequestError;
public OIDCUserInfoResponse requestUserInfo(String issuerUrl, OIDCAccessToken accesstoken) throws OIDCUserInfoRequestError;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package io.jans.kc.oidc;

public class OIDCTokenError {

private String code;
private String description;
private int httpStatusCode;

public OIDCTokenError(String code, String description, int httpStatusCode) {

this.code = code;
this.description = description;
this.httpStatusCode = httpStatusCode;
}

public String code() {

return this.code;
}

public String description() {

return this.description;
}

public int httpStatusCode() {

return this.httpStatusCode;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package io.jans.kc.oidc;

import java.net.URI;

public class OIDCTokenRequest {

private String code;
//in the future , replace this with a client credentials
//interface to support various authntication credential schemes
private String clientId;
private String clientSecret;
private URI redirecturi;

public OIDCTokenRequest(String code, String clientId,String clientSecret,URI redirecturi) {
this.code = code;
this.clientId = clientId;
this.clientSecret = clientSecret;
this.redirecturi = redirecturi;
}

public String getCode() {

return this.code;
}

public String getClientId() {

return this.clientId;
}

public String getClientSecret() {

return this.clientSecret;
}

public URI getRedirectUri() {

return this.redirecturi;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package io.jans.kc.oidc;

public class OIDCTokenRequestError extends Exception {

public OIDCTokenRequestError(String msg) {
super(msg);
}

public OIDCTokenRequestError(String msg, Throwable cause) {
super(msg,cause);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package io.jans.kc.oidc;

public interface OIDCTokenResponse {

public OIDCAccessToken accessToken();
public OIDCRefreshToken refreshToken();
public OIDCTokenError error();
public boolean indicatesSuccess();
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package io.jans.kc.oidc;

public class OIDCUserInfoError {

private String code;
private String description;
private int httpStatusCode;

public OIDCUserInfoError(String code, String description, int httpStatusCode) {

this.code = code;
this.description = description;
this.httpStatusCode = httpStatusCode;
}

public String code() {

return this.code;
}

public String description() {

return this.description;
}

public int httpStatusCode() {

return this.httpStatusCode;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package io.jans.kc.oidc;

public class OIDCUserInfoRequestError extends Exception {

public OIDCUserInfoRequestError(String msg) {
super(msg);
}


public OIDCUserInfoRequestError(String msg, Throwable cause) {
super(msg,cause);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package io.jans.kc.oidc;

public interface OIDCUserInfoResponse {

public String username();
public String email();
public boolean indicatesSuccess();
public OIDCUserInfoError error();
}
Loading