No description
3d47ab3665
Creation of database table DatabaseChangeLog was omitted from SQL script which prevented creation of the database from scratch. The fix adds DDL commands to create the table to the output SQL script in case of empty database initialization. Please note that DatabaseChangeLogLock is intentionally omitted. It is created automatically before the update is even executed because a lock is acquired (thus the table is properly created if it does not exist) before check for up-to-dateness of database and potential migration in KeycloakApplication constructor. |
||
---|---|---|
adapters | ||
authz | ||
common | ||
core | ||
dependencies | ||
distribution | ||
examples | ||
federation | ||
integration | ||
misc | ||
model | ||
proxy | ||
saml-core | ||
saml-core-api | ||
server-spi | ||
services | ||
testsuite | ||
themes | ||
util | ||
wildfly | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
License.html | ||
pom.xml | ||
README.md |
Keycloak
Open Source Identity and Access Management for modern Applications and Services.
For more information about Keycloak visit Keycloak homepage and Keycloak blog.
Building
Ensure you have JDK 8 (or newer), Maven 3.2.1 (or newer) and Git installed
java -version
mvn -version
git --version
First clone the Keycloak repository:
git clone https://github.com/keycloak/keycloak.git
cd keycloak
To build Keycloak run:
mvn install
This will build all modules and run the testsuite.
To build the distribution run:
mvn install -Pdistribution
Once completed you will find distribution archives in distribution
.
Starting Keycloak
To start Keycloak during development first build as specficied above, then run:
mvn -f testsuite/integration/pom.xml exec:java -Pkeycloak-server
To start Keycloak from the appliance distribution first build the distribution it as specified above, then run:
tar xfz distribution/appliance-dist/target/keycloak-appliance-dist-all-<VERSION>.tar.gz
cd keycloak-appliance-dist-all-<VERSION>/keycloak
bin/standalone.sh
To stop the server press Ctrl + C
.
Help and Documentation
- Documentation - User Guide, Admin REST API and Javadocs
- User Mailing List - Mailing list to ask for help and general questions about Keycloak
- JIRA - Issue tracker for bugs and feature requests
Contributing
- Developer documentation
- Hacking on Keycloak - How to become a Keycloak contributor
- Testsuite - Details about testsuite, but also how to quickly run Keycloak during development and a few test tools (OTP generation, LDAP server, Mail server)
- Database Testing - How to do testing of Keycloak on different databases
- Updating Database - How to change the Keycloak database
- Changing the Default keycloak-subsystem Configuration - How to update the default keycloak-subsystem config
- Developer Mailing List - Mailing list to discuss development of Keycloak