Steps to Build your Verifier
How to Build Backend
Download the repository locally using:
git clone git@github.com:eu-digital-identity-wallet/eudi-srv-web-verifier-endpoint-23220-4-kt.git
To start the service locally you can execute
./gradlew bootRun
./gradlew bootBuildImage
How to Build the UI
Download the repository locally using:
git clone git@github.com:eu-digital-identity-wallet/eudi-web-verifier.git
Run ng build to build the project. The build artifacts will be stored in the dist/ directory.
Run all verifier components together
To start both verifier UI and verifier backend services together a docker compose file has been implemented that can be found here. Running the command below will start the following service: - verifier: The Verifier/RP trusted end-point, - verifier-ui: The Verifier's UI application and - haproxy: A reverse proxy for SSL termination. - To change the ssl certificate update haproxy.pem. - To reconfigure haproxy update file haproxy.conf.
To start the docker compose environment
# From project root directory
cd docker
docker-compose up -d
# From project root directory
cd docker
docker-compose down
The 'verifier' service can be configured by setting its configuration properties by setting them as environment variables of the service in docker-compose.yaml.
Example:
verifier:
image: ghcr.io/eu-digital-identity-wallet/eudi-srv-web-verifier-endpoint-23220-4-kt:latest
container_name: verifier-backend
ports:
- "8080:8080"
environment:
VERIFIER_PUBLICURL: "https://10.240.174.10"
VERIFIER_RESPONSE_MODE: "DirectPost"
VERIFIER_JAR_SIGNING_KEY_KEYSTORE: file:///keystore.jks
Mount external keystore to be used with Authorization Request signing
When property VERIFIER_JAR_SIGNING_KEY is set to LoadFromKeystore the service can be configured (as described here) to read from a keystore the certificate used for signing authorization requests.
To provide an external keystore mount it to the path designated by the value of property VERIFIER_JAR_SIGNING_KEY_KEYSTORE.
Example:
verifier:
image: ghcr.io/eu-digital-identity-wallet/eudi-srv-web-verifier-endpoint-23220-4-kt:latest
container_name: verifier-backend
ports:
- "8080:8080"
environment:
VERIFIER_PUBLICURL: "https://10.240.174.10"
VERIFIER_RESPONSE_MODE: "DirectPost"
VERIFIER_JAR_SIGNING_KEY_KEYSTORE: file:///certs/keystore.jks
volumes:
- <PATH OF KEYSTORE IN HOST MACHINE>/keystore.jks:/certs/keystore.jks