Skip to content

Commit

Permalink
feat(keycloak-integration): create authenticator for keycloak (#6150)
Browse files Browse the repository at this point in the history
* feat(keycloak-integration): added maven parent pom for subprojects

* feat(keycloak-integration): added janssen authenticator pom

* feat(keycloak-integration): added maven assembly xml for authenticator dependencies

* feat(keycloak-integration): added spi factory discovery meta for keycloak
* added authenticator spi factory discovery meta for keycloak
* added rest service spi factory discovery meta for keycloak

* feat(keycloak-integration): added authenticator message mapping file

* feat(keycloak-integration): added authenticator image resources

* feat(keycloak-integration): added page templates for authenticator

* feat(keycloak-integration): added authenticator core coded
* added authenticator code
* added authenticator factory code
* added authenticator config properties code

* feat(keycloak-integration): added missing file containing session attribute definitions

* feat(keycloak-integration): added nimbus based minimalist oidc client code

* chore(keycloak-integration): minor change to the authenticator factory

* feat(keycloak-integration): added authn completion rest service

Signed-off-by: Rolain Djeumen <uprightech@gmail.com>

* ci: add scanning

Signed-off-by: moabu <47318409+moabu@users.noreply.github.com>

* ci: fix CODEOWNERS

Signed-off-by: moabu <47318409+moabu@users.noreply.github.com>

* ci: fix CODEOWNERS

Signed-off-by: moabu <47318409+moabu@users.noreply.github.com>

---------

Signed-off-by: Rolain Djeumen <uprightech@gmail.com>
Signed-off-by: moabu <47318409+moabu@users.noreply.github.com>
Co-authored-by: moabu <47318409+moabu@users.noreply.github.com>
  • Loading branch information
uprightech and moabu authored Sep 28, 2023
1 parent 6269d30 commit bcecc16
Show file tree
Hide file tree
Showing 44 changed files with 1,903 additions and 5 deletions.
6 changes: 4 additions & 2 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
# These owners will be the default owners for everything in this branch of
# the repo. Unless a later match takes precedence

/keycloak-integration/ @uprightech
/docker-jans-*/ @moabu @iromli
/automation/ @moabu
/charts/ @moabu
Expand All @@ -21,9 +22,10 @@
/jans-scim/ @jgomer2001
/jans-config-api/ @pujavs @yuriyz @yurem
/jans-cli-tui/ @devrimyatar
/jans-linux-setup/ @devrimyatar @smansoft @yuriyz @yurem
/jans-linux-setup/ @devrimyatar @yuriyz @yurem
/jans-linux-setup/jans_setup/setup_app/version.py @moabu
/jans-linux-setup/static/scripts/admin_ui_plugin.py @devrimyatar @duttarnab
/jans-cache-refresh/ @yurem @shekhar16
/jans-link/ @shekhar16
/agama/ @jgomer2001
/demos/jans-tent/ @christian-hawk
/demos/jans-tarp/ @duttarnab
6 changes: 5 additions & 1 deletion .github/workflows/build-wars.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
branches:
- main
paths:
- 'keycloak-integration/**'
- 'agama/**'
- 'jans-auth-server/**'
- 'jans-bom/**'
Expand All @@ -14,11 +15,13 @@ on:
- 'jans-fido2/**'
- 'jans-orm/**'
- 'jans-scim/**'
- 'jans-link/**'

push:
branches:
- main
paths:
- 'keycloak-integration/**'
- 'agama/**'
- 'jans-auth-server/**'
- 'jans-bom/**'
Expand All @@ -28,6 +31,7 @@ on:
- 'jans-fido2/**'
- 'jans-orm/**'
- 'jans-scim/**'
- 'jans-link/**'
jobs:
build:
name: Build wars
Expand All @@ -36,7 +40,7 @@ jobs:
strategy:
max-parallel: 11
matrix:
fldrpath: ['jans-bom','agama','jans-fido2','jans-core','jans-eleven','jans-auth-server','jans-orm','jans-config-api','jans-scim']
fldrpath: ['jans-bom','agama','jans-fido2','jans-core','jans-eleven','jans-auth-server','jans-orm','jans-config-api','jans-scim', 'keycloak-integration', 'jans-link']
steps:
- name : Variables
run: |
Expand Down
8 changes: 7 additions & 1 deletion .github/workflows/central_code_quality_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ on:
- main
- '!update-pycloud-in-**'
paths:
- 'jans-link/**'
- 'keycloak-integration/**'
- 'jans-auth-server/**'
- 'jans-orm/**'
- 'jans-config-api/**'
Expand All @@ -32,6 +34,8 @@ on:
- opened
- synchronize
paths:
- 'jans-link/**'
- 'keycloak-integration/**'
- 'jans-auth-server/**'
- 'jans-orm/**'
- 'jans-config-api/**'
Expand All @@ -55,9 +59,11 @@ jobs:
strategy:
fail-fast: false
matrix:
module: [jans-auth-server, agama, jans-config-api, jans-core, jans-linux-setup, jans-cli-tui, jans-fido2, jans-orm, jans-scim, jans-eleven, jans-pycloudlib]
module: [keycloak-integration, jans-auth-server, agama, jans-config-api, jans-core, jans-linux-setup, jans-cli-tui, jans-fido2, jans-orm, jans-scim, jans-eleven, jans-pycloudlib, jans-link]
env:
JVM_PROJECTS: |
keycloak-integration
jans-link
jans-auth-server
jans-orm
jans-config-api
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ jobs:
#max-parallel: 1
fail-fast: false
matrix:
maven: [ "jans-scim", "jans-orm", "jans-fido2", "jans-eleven", "jans-core", "jans-config-api", "jans-bom", "jans-auth-server", "agama" ]
maven: [ "jans-scim", "jans-orm", "jans-fido2", "jans-eleven", "jans-core", "jans-config-api", "jans-bom", "jans-auth-server", "agama", "jans-link", "keycloak-integration" ]
steps:
- name: Checkout
uses: actions/checkout@v3
Expand Down
103 changes: 103 additions & 0 deletions keycloak-integration/authenticator/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

<modelVersion>4.0.0</modelVersion>
<groupId>io.jans</groupId>
<artifactId>jans-authenticator</artifactId>
<name>jans-authenticator</name>
<packaging>jar</packaging>

<parent>
<groupId>io.jans</groupId>
<artifactId>keycloak-integration-parent</artifactId>
<version>1.0.19-SNAPSHOT</version>
</parent>

<prerequisites>
<maven>${maven.min-version}</maven>
</prerequisites>

<dependencies>

<!-- keycloak dependencies -->
<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-core</artifactId>
</dependency>

<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-server-spi</artifactId>
</dependency>

<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-server-spi-private</artifactId>
</dependency>

<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-services</artifactId>
</dependency>
<!-- end keycloak dependencies-->

<!-- nimbus dependencies -->
<dependency>
<groupId>com.nimbusds</groupId>
<artifactId>oauth2-oidc-sdk</artifactId>
</dependency>
<!-- end nimbus dependencies -->
</dependencies>

<build>
<plugins>

<!-- maven deps plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven-deps-plugin.version}</version>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/deps</outputDirectory>
<includeScope>runtime</includeScope>
<excludeTransitive>false</excludeTransitive>
</configuration>
</execution>
</executions>
</plugin>
<!-- end maven deps plugin -->

<!-- maven assembly plugin -->

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven-assembly-plugin.version}</version>
<configuration>
<descriptors>
<descriptor>src/assembly/dependencies.xml</descriptor>
</descriptors>
<finalName>${project.artifactId}-${project.version}</finalName>
</configuration>
<executions>
<execution>
<id>zip-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>

<!-- end maven assembly plugin -->
</plugins>
</build>
</project>
17 changes: 17 additions & 0 deletions keycloak-integration/authenticator/src/assembly/dependencies.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.2.0 https://maven.apache.org/xsd/assembly-2.2.0.xsd">
<id>deps</id>
<formats>
<format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>target/deps/</directory>
<outputDirectory>.</outputDirectory>
<includes>
<include>*.jar</include>
</includes>
</fileSet>
</fileSets>
</assembly>
Loading

0 comments on commit bcecc16

Please sign in to comment.