keycloak / keycloak-quickstarts

Apache License 2.0
1.98k stars 984 forks source link

Keycloak Quickstarts

Keycloak is an Open Source Identity and Access Management solution for modern Applications and Services.

The quickstarts herein provided demonstrate securing applications with Keycloak using different programming languages (and frameworks) and how to extend the server capabilities through a set of Java-based Service Provider Interfaces(SPI). They provide small, specific, working examples that can be used as a reference for your own project.

They are organized in this repository under different categories (or directories) as follows:

Category Description
extension Examples about how to extend the server capabilities using some of the Keycloak SPIs.
jakarta Examples about how secure Jakarta Applications
js Examples about how to secure JavaScript Applications
nodejs Examples about how to secure NodeJS Applications
spring Examples about how to secure Spring Applications

For any missing programming language and framework, you might want to consider looking at:

We are happy to accept contributions for any reference that demonstrates how to integrate Keycloak with additional programming languages or frameworks.

Building, Testing, and Running the Quickstarts

First clone the Keycloak repository:

git clone https://github.com/keycloak/keycloak-quickstarts.git
cd keycloak-quickstarts

Each quickstart provides its own documentation with the steps you need to follow in order to build, test, and run the example. Look at the README.md file at the root of a quickstart for more details.

Chrome driver version

Some automated tests rely on the chrome browser present on your laptop. Also you need to have correct version of chrome driver according to the version of the chrome browser used. In case of the issues, see Chrome page and download correct chrome driver version for your Chrome browser. Then add system property webdriver.chrome.driver when running the tests according to chrome version and add whole path to the chrome driver. For instance something like -Dwebdriver.chrome.driver=/somedir/chromedriver-linux64-119.0.6045.105/chromedriver.

Help and Documentation

Reporting Security Vulnerabilities

If you've found a security vulnerability, please look at the instructions on how to properly report it

Reporting an issue

If you believe you have discovered a defect in Keycloak, please open an issue. Please remember to provide a good summary, description as well as steps to reproduce the issue.

Contributing

Before contributing to this repository, please read our contributing guidelines.

Related Projects

License