This repository contains the codebase for IAM-aaS, an Identity and Access Management as a Service solution which uses Keycloak as identity provider.
- Docker and Docker Compose installed on your system
- Java 17 or higher
- Maven
- Clone the IAM-aaS repository:
git clone https://github.com/omidmk567/IAM-aaS.git && cd IAM-aaS/iam-api
- Set required environment variables placed in
iam-api/src/main/resources/application.properties
andkeycloak/iam-aas-realm.json
, which are:
spring.mail.password
: Your mail smtp password to send mails.vault.smtp-password
: Your mail smtp password to send mails via keycloak.vault.google-client-secret
: Your Google client secret for oauth2. You may want to configure your client id and client secret.vault.github-client-secret
: Your GitHub client secret for oauth2. You may want to configure your client id and client secret.
-
Optionally configure other properties placed in
application.properties
file. -
Build and start the IAM-aaS containers.
mvn spring-boot:run
There are two profiles: dev
and prod
. You can specify the active profile with option -Dspring-boot.run.profiles=prod
. the default active profile is dev
.
Webserver is accessible on localhost:8000
.
We welcome contributions to IAM-aaS! Feel free to submit bug reports, feature requests, or pull requests through our GitHub repository.