https://github.com/premium-minds/flowable-keycloak
Library to replace Flowable IDM with Keycloak integration
https://github.com/premium-minds/flowable-keycloak
flowable hacktoberfest keycloak
Last synced: 5 months ago
JSON representation
Library to replace Flowable IDM with Keycloak integration
- Host: GitHub
- URL: https://github.com/premium-minds/flowable-keycloak
- Owner: premium-minds
- License: lgpl-3.0
- Created: 2020-01-31T12:47:32.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-07-02T09:50:12.000Z (over 1 year ago)
- Last Synced: 2025-07-29T13:33:28.011Z (7 months ago)
- Topics: flowable, hacktoberfest, keycloak
- Language: Java
- Homepage:
- Size: 123 KB
- Stars: 5
- Watchers: 4
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: COPYING.LESSER
Awesome Lists containing this project
README
# Flowable Keycloak integration library
This library allows to replace Flowable IDM with Keycloak integration (through OpenID Connect) to the
Flowable Apps (https://flowable.com/open-source/docs/bpmn/ch14-Applications/).
## Maven project

Add the following maven dependency to your project `pom.xml`:
```xml
com.premiumminds.flowable
flowable-keycloak
1.6
```
Check out [sonatype repository](https://oss.sonatype.org/index.html#nexus-search;quick~flowable-keycloak) for latest snapshots and releases.
## Example usage
This example works for the flowable-ui-* projects in the flowable repository:
* [Flowable UI Admin](https://github.com/flowable/flowable-engine/tree/master/modules/flowable-ui-admin)
* [Flowable UI Modeler](https://github.com/flowable/flowable-engine/tree/master/modules/flowable-ui-modeler)
* [Flowable UI Task](https://github.com/flowable/flowable-engine/tree/master/modules/flowable-ui-task)
### Changes in the project
Add the `flowable-keycloak` library to the POM of the `flowable-ui-*-conf` project.
Changes in the `SecurityConfiguration` class in the `flowable-ui-*-conf` project:
* Replace the class `FlowableCookieFilterRegistrationBean` with `KeycloakCookieFilterRegistrationBean`
### Configurations
This library reads the following configurations:
```
keycloak.url =
keycloak.realm =
keycloak.issuer-url =
keycloak.client.client-id =
keycloak.client.client-secret =
keycloak.client.scope = openid roles
keycloak.client.redirect-uri = ${flowable.common.app.redirect-on-auth-success}/callback
keycloak.connect-timeout = 10000
keycloak.read-timeout = 10000
```
For testing, you can add this configurations to the file
`src/main/resources/flowable-default.properties` in the "flowable-ui-*-app" project.
### Keycloak roles
The library will add the client roles as flowable priviledges.
Flowable uses the following priviledges:
* `access-modeler`
* `access-rest-api`
* `access-admin`
* `access-task`
So you should have this as client roles in keycloak instance.
## Continuous Integration
[](https://travis-ci.com/github/premium-minds/flowable-keycloak)
CI is hosted by [travis-ci.com](https://travis-ci.com/)
## Licence
Copyright (C) 2020 [Premium Minds](https://www.premium-minds.com/)
Licensed under the [GNU Lesser General Public Licence](https://www.gnu.org/licenses/lgpl.html)