The Explorer Authentication API enables users to log in, with or without a wallet, to share personalized data such as bookmarks across devices.
๐ Check the Explorer repository to understand how the microservices work together
To ensure the stability and reliability of this project, unit and mutation tests have been implemented. By clicking on the links below, you can access the detailed test reports and review the outcomes of the tests performed.
๐ Coverage Report
๐ Mutation Report
- Docker && Docker Compose
- Clone this repository
- Copy
./.m2/settings.default.xml.tpl
to./.m2/settings.xml
- Fill
{PRIVATE_MVN_REGISTRY_URL}
,{PRIVATE_MVN_REGISTRY_USER}
and{PRIVATE_MVN_REGISTRY_PASS}
in./.m2/settings.xml
- Copy
.env.example
to.env
- Fill the
.env
file with your values (explain below) - Create if not exists external network
infrastructure-net-local
withdocker network create infrastructure-net-local
- Run
docker-compose -f docker-compose-local.yml up -d
to start the containers
SPRING_PROFILES_ACTIVE
: Spring profile [local, dev, test, prod], plus Redis Profiles. See Below. Default is local.SWAGGER_CLIENT_URL
: Domain clientSWAGGER_SERVER_URL
: Domain serverTIME_TO_LIVE_REDIS_SIGN_OUT
: Time to live on Redis
-
redis standalone
REDIS_STANDALONE_HOST
: Redis hostname eg.127.0.0.1
.REDIS_STANDALONE_PORT
: Redis ort, eg.6379
.REDIS_STANDALONE_PASSWORD
: Redis password. Default bitnami.
-
redis sentinel
REDIS_MASTER_NAME
: Redis master name. Default is mymaster.REDIS_SENTINEL_PASS
: Redis sentinel password. Default is redis_sentinel_pass.REDIS_SENTINEL_HOST
: Redis sentinel host. Default is cardano.redis.sentinel.
-
redis-cluster
NODE_ADDRESSES
: List of redis cluster nodes host and port.REDIS_CLUSTER_PASSWORD
: Password of redis cluster.
RSA_PUBLIC_KEY_AUTH
: RSA Public Key used to decode the JWT string generated during login. This key obtained from Keycloak.RSA_PRIVATE_KEY_MAIL
: RSA Private Key used to encode verify email, generated by executing a command:openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
.RSA_PUBLIC_KEY_MAIL
: RSA Public Key used to decode verify code in verify email, generated by executing a command:openssl rsa -pubout -in private_key.pem -out public_key.pem
.
KEYCLOAK_REALM_NAME
: Realm name on Keycloak.KEYCLOAK_SERVER_URL
: Domain Keycloak.KEYCLOAK_CLIENT_ID
: Client ID on Keycloak.KEYCLOAK_CLIENT_SECRET
: Client secret on Keycloak.KEYCLOAK_ROLE_MAPPING
: Allow access to resources on Keycloak after assigning roles. Default is true.KEYCLOAK_BEARER_ONLY
: The application only accepts requests containing tokens in the Authorization header using the Bearer authentication method. Default is true.