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.propertiesandkeycloak/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.propertiesfile. -
Build and start the IAM-aaS containers.
mvn spring-boot:runThere 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.