A to do list that stores its data encrypted and GDPR-compliant using crypto shredding. It was developed as a proof-of-concept and example for crypto shredding. It uses the Keycloak GDPR module.
Prerequisites:
- JDK 11+
- Docker
- NodeJS 12+
Start the application:
# Start MySQL database and Keycloak containers
docker-compose up -d
# build the application
./mvnw clean install
# start the backend
./mvnw spring-boot:run -f assembly
# start the frontend (in another terminal)
cd frontend
npm start
To test the application, there are some preconfigured users in Keycloak:
- Master Realm (login to the Keycloak admin-console)
- admin / admin
- App Realm (login to the demo app)
- user1 / user1
- user2 / user2
For performance we're using Gatling:
$ ./mvnw gatling:test -f assembly
To debug the deployed gdpr-module in Keycloak:
$ docker compose up
then connect via Remote Debugging:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:9097