Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Develop (#53) * Added Spring boot with status API * chores: PR feedback * Update README.md * Updated the server name in gradle module * Create admin-server component * Added Spring boot with status API * chores: PR feedback * Updated the server name in gradle module * Added test for status endpoint and added README * Enabled test run on gradle build * Enabled test run on gradle build * Enabled test run on gradle build * chore: extract ktor version * Added Postgres and docker * Added environment file * Updated env variable * Feature/oidf 45 status endpoint (#6) * Moved admin-server to modules * Fixed merge conflicts * Updated CI for GitHub secrets * Added docker in GitHub action * Added env variable for docker in GitHub action * Removed Windows in GitHub action * Added comment for removing Windows in CI * Removed hardcoded path from run script * chore: fix project name * feat: Created OpenAPI specs project of the EntityStatement class * chore: fix project name * chore: extract ktor version * fix: temporarily hardcode db credentials * chore: Created README.md and disabled model-only profile * Feature/oidf 32 postgres docker (#7) * Added Spring boot with status API * chores: PR feedback * Updated the server name in gradle module * Added test for status endpoint and added README * Enabled test run on gradle build * Added Postgres and docker * Added environment file * Updated env variable * Fixed merge conflicts * Updated CI for GitHub secrets * Added docker in GitHub action * Added env variable for docker in GitHub action * Removed Windows in GitHub action * Added comment for removing Windows in CI * Removed hardcoded path from run script * fix: make admin server load env variables from root .env file (#10) * chore: fix project name * chore: extract ktor version * fix: temporarily hardcode db credentials * fix: import .env variables from file * fix: adjust ci file to new docker compose dir --------- Co-authored-by: sanderPostma <spostma@sphereon.com> --------- Co-authored-by: John Melati <github@jcmelati.com> Co-authored-by: sanderPostma <spostma@sphereon.com> * chore: Added the build jar task * Added Test container * chore: Fixed versioning * bugfix: Fixed Open Api specs file path * chore: Added flyway dependency * feat: Flyway setup * fix: Merging issues * feat: Added mapper for JWT * refactor: Fixed the profiles section of the documentation * refactor: Added fat jat and maven publication to local repository * refactor: changed to string the value of the dateTimeLibrary property * refactor: Upgraded OpenAPI generator and removed unneeded serialization configuration * feat: Created the client to fetch entity statements * feat: Added OpenAPI maven local and added mapper for entity statement * OIDF -31: Added Kermit logging library (#12) * Added Kermit logging * Added logger class and added dependency in admin-server * fix: adding env parameter for logging * chores: removed logger env * chores: changed from implementation to api * refactor: Removed "public" from the database objects creation/utilization * chores: code cleanup * refactor: Made openid a KMM library. * fix: Fixed ktor-client-cio issue * fix: Changed the models jvm target to 11 * bugfix: Fixed OpenAPI model import issue * fix: Fixed serialization issue and Open Api Generator bug * feat: Added mapping for trust chain and categorize entity statement * refactor: Refactored the unit tests * chore: Added nexus configuration * refactor: Updated nexus urls * chores: moved decode code * chore: Added Nexus repositories to the openid-federation-common module * chores: PR feedback changes * refactor: Updated nexus urls and added artifacts to be published to Nexus * refactor: Extended build task with the publish task * refactor: Removed the publish task from gradle build task * chore: Added content negotiation and content-type entity-statement+jwt * fix: enabled logger and updated GET call * Revert "fix: enabled logger and updated GET call" This reverts commit c82ec03. * chores: PR changes * Revert "Feature/oidf 46" * fix: PR changes * feature/OIDF-7 (#16) * feat: Implemented KMS, JWKS generation and JWT sign * fix: Test dependencies * feat: Created sign and verify jwt functions * refactor: Added trailing new line to the files * fix: Removed some targets temporarily to fix build issues. * refactor: made the second paramenter of functions a Map without default value and refactored the key generation * refactor: Fixed build issues and removed commented-out code * fix: Fixed failing test and null pointer exception * chore: Removed redundant HTTPCache * chore: Uncommented ios targets back * refactor: refactored serializeNullable() * refactor: refactored deserialize() * refactor: refactored OutgoingEntityStatementContent.bytes() * refactor: refactored the tests to use assertEquals() * refactor: Fixed dependencies and made the protectedHeader a param * refactor: Fixed code formatting * refactor: Changed the response body to jwt string * refactor: Removed unnecessary converter * refactor: Made JWT payload and header classes to be used as input * fix: add missing repositories for windows (#22) * fix: add missing repositories for windows * fix: update ci docker compose command * feat: implement jwk persistence * fix: remove unused statement * fix: github CI * feat/OIDF-51 - Implement Persistence Module (#21) * merge oidf-7 * fix: models package * fix: openapi TrustMarkOwner property * fix: create account method return type * fix: rename file for consistency * feat: implement migration * fix: repository dependency * fix: add missing trailing new line * feat: implement services module * fix: package path * fix: remove unused file * fix: add missing entity to openapi spec * feat: persist generated keys * fix: typo * fix: missing deps * fix: ci docker command * fix: dependency * fix: remove unnecessary statement * feat: abstract jwk to its own module * feat: encrypt private keys when saving to database * feat: add note to README regarding usage of Local KMS in prod envs * fix: adapt key encryption test cases for when APP_KEY is null * fix: adjust function name * fix: add kotlin-js-store to gitignore * fix: clean common gradle file * fix: disable android build * fix: remove js implementation from services * feat: implement federation server structure * feat: implement Subordinate repository * fix: remove unused files * feat: implement federation list endpoint * Feature/oidf 55 (#27) * feat: create servers dockerized containers * fix: only build jvm jars * fix: remove unnecessary env var * feat: update README with docker instructions * fix: further improve docker README * fix: adjust CI * fix: re-add missing env vars * fix: example app key lenght * fix: make docker wait for db to fully load * fix: pass db user to health check * fix: pass db user to health check * Feature/oidf 54 (#31) * feat: Implemented KMS, JWKS generation and JWT sign * fix: Test dependencies * feat: Created sign and verify jwt functions * refactor: Added trailing new line to the files * fix: Removed some targets temporarily to fix build issues. * refactor: made the second paramenter of functions a Map without default value and refactored the key generation * refactor: Fixed build issues and removed commented-out code * fix: Fixed failing test and null pointer exception * refactor: Fixed dependencies and made the protectedHeader a param * refactor: Fixed code formatting * refactor: Made JWT payload and header classes to be used as input * fix: add missing repositories for windows (#22) * fix: add missing repositories for windows * fix: update ci docker compose command * feat: implement jwk persistence * fix: remove unused statement * fix: github CI * fix: add missing entity to openapi spec * feat: persist generated keys * fix: typo * fix: remove unnecessary statement * feat: abstract jwk to its own module * feat: encrypt private keys when saving to database * feat: add note to README regarding usage of Local KMS in prod envs * fix: adapt key encryption test cases for when APP_KEY is null * fix: adjust function name * fix: add kotlin-js-store to gitignore * fix: clean common gradle file * fix: disable android build * fix: remove js implementation from services * feat: implement Subordinate repository (#29) * feat: implement federation server structure (#28) * feat: implement federation server structure * feat: implement Subordinate repository * fix: remove unused files * feat: implement federation list endpoint --------- Co-authored-by: Zoe Maas <zmaas@sphereon.com> * fix: make docker wait for db to fully load (#32) --------- Co-authored-by: Zoe Maas <zmaas@sphereon.com> Co-authored-by: John Melati <github@jcmelati.com> * Feature/oidf 57 (#33) * feat: Implemented KMS, JWKS generation and JWT sign * fix: Test dependencies * feat: Created sign and verify jwt functions * refactor: Added trailing new line to the files * fix: Removed some targets temporarily to fix build issues. * refactor: made the second paramenter of functions a Map without default value and refactored the key generation * refactor: Fixed build issues and removed commented-out code * fix: Fixed failing test and null pointer exception * chore: Removed redundant HTTPCache * chore: Uncommented ios targets back * refactor: refactored serializeNullable() * refactor: refactored deserialize() * refactor: refactored OutgoingEntityStatementContent.bytes() * refactor: refactored the tests to use assertEquals() * refactor: Fixed dependencies and made the protectedHeader a param * refactor: Fixed code formatting * refactor: Changed the response body to jwt string * refactor: Removed unnecessary converter * refactor: Made JWT payload and header classes to be used as input * fix: add missing repositories for windows (#22) * fix: add missing repositories for windows * fix: update ci docker compose command * feat: implement jwk persistence * fix: remove unused statement * fix: github CI * feat/OIDF-51 - Implement Persistence Module (#21) * merge oidf-7 * fix: models package * fix: openapi TrustMarkOwner property * fix: create account method return type * fix: rename file for consistency * feat: implement migration * fix: repository dependency * fix: add missing trailing new line * feat: implement services module * fix: package path * fix: remove unused file * fix: add missing entity to openapi spec * feat: persist generated keys * fix: typo * fix: missing deps * fix: ci docker command * fix: dependency * fix: remove unnecessary statement * feat: abstract jwk to its own module * feat: encrypt private keys when saving to database * feat: add note to README regarding usage of Local KMS in prod envs * fix: adapt key encryption test cases for when APP_KEY is null * fix: adjust function name * fix: add kotlin-js-store to gitignore * fix: clean common gradle file * fix: disable android build * fix: remove js implementation from services * feat: implement federation server structure * feat: implement Subordinate repository * fix: remove unused files * feat: implement federation list endpoint * Feature/oidf 55 (#27) * feat: create servers dockerized containers * fix: only build jvm jars * fix: remove unnecessary env var * feat: update README with docker instructions * fix: further improve docker README * fix: adjust CI * fix: re-add missing env vars * fix: example app key lenght * fix: make docker wait for db to fully load --------- Co-authored-by: Zoe Maas <zmaas@sphereon.com> * feat: Implemented KMS, JWKS generation and JWT sign (#14) * feat: Implemented KMS, JWKS generation and JWT sign * fix: Test dependencies * feat: Created sign and verify jwt functions * refactor: Added trailing new line to the files * fix: Removed some targets temporarily to fix build issues. * refactor: made the second paramenter of functions a Map without default value and refactored the key generation * refactor: Fixed build issues and removed commented-out code * fix: Fixed failing test and null pointer exception * refactor: Fixed dependencies and made the protectedHeader a param * refactor: Fixed code formatting * refactor: Made JWT payload and header classes to be used as input * fix: add missing repositories for windows (#22) * fix: add missing repositories for windows * fix: update ci docker compose command * Feature/oidf 54 (#26) * chore: Removed redundant HTTPCache * chore: Uncommented ios targets back * refactor: refactored serializeNullable() * refactor: refactored deserialize() * refactor: refactored OutgoingEntityStatementContent.bytes() * refactor: refactored the tests to use assertEquals() * refactor: Changed the response body to jwt string * refactor: Removed unnecessary converter * feat: implement jwk persistence * fix: remove unused statement * fix: github CI * feat/OIDF-51 - Implement Persistence Module (#21) * merge oidf-7 * fix: models package * fix: openapi TrustMarkOwner property * fix: create account method return type * fix: rename file for consistency * feat: implement migration * fix: repository dependency * fix: add missing trailing new line * feat: implement services module * fix: package path * fix: remove unused file * fix: add missing entity to openapi spec * feat: persist generated keys * fix: typo * fix: missing deps * fix: ci docker command * fix: dependency * fix: remove unnecessary statement * feat: abstract jwk to its own module * feat: encrypt private keys when saving to database * feat: add note to README regarding usage of Local KMS in prod envs * fix: adapt key encryption test cases for when APP_KEY is null * fix: adjust function name * fix: add kotlin-js-store to gitignore * fix: clean common gradle file * fix: disable android build * fix: remove js implementation from services * feat: implement Subordinate repository (#29) * feat: implement federation server structure (#28) * feat: implement federation server structure * feat: implement Subordinate repository * fix: remove unused files * feat: implement federation list endpoint --------- Co-authored-by: Zoe Maas <zmaas@sphereon.com> --------- Co-authored-by: Zoe Maas <zmaas@sphereon.com> Co-authored-by: John Melati <github@jcmelati.com> * fix: jar creation * feat: implement entity config builder * feat: implement subordinate relationship create * feat: implement published entity configuration statement persistence * feat: implement published entity configuration statement persistence * fix: entity configuration database constraint * feat: implement entity configuration metadata * fix: add return on end of files * fix: add return on end of files * fix: return constants on errors * Feature/oidf 15 2 (#34) * feat: implement entity config builder * feat: implement subordinate relationship create * feat: implement published entity configuration statement persistence * feat: implement published entity configuration statement persistence * fix: entity configuration database constraint * feat: implement entity configuration metadata * fix: add return on end of files * fix: add return on end of files * fix: return constants on errors * fix: table name case * feat: add authority hints support * fix: authority hint already exists check * fix: file format * fix: adjust service filename * fix: metadata field name * feat: added KmsService and local KMS module * fix: linked service layer to local KMS module * feat: implement EntityConfigurationMetadataDTO * feat: implement crit * feat: Setup Spring JDBC for local kms * fix: added missing properties file * fix: added missing function in LocalKmsDatabaseConnection * fix: change to SQLDelight * fix: Fixed binary data store for Postgres * feat: Added query for delete key * feat: changed dependencies * feat: moved JWT, Jwk to local kms module * feat: linked generate key pair and sign functions * Update README.md * fix: fixed verify function * fix: updated sign and verify function with ECkey * fix: Fixed jvm test for sign and verify * fix: Fixed verify parameter * fix: Added JWK object into payload body * fix: Added signing for EntityConfigurationStatement * feat: create Entity Configuration Statement JWT * fix: add missing type * fix: remove unnecessary statement * fix: ci * fix: ci * fix: ci * fix: missing dto * fix: remove wrong attributes from openapi spec * fix: bump openapi version * Feature/oidf 42 (#35) * feat: added KmsService and local KMS module * fix: linked service layer to local KMS module * feat: Setup Spring JDBC for local kms * fix: added missing properties file * fix: added missing function in LocalKmsDatabaseConnection * fix: change to SQLDelight * fix: Fixed binary data store for Postgres * feat: Added query for delete key * feat: changed dependencies * feat: moved JWT, Jwk to local kms module * feat: linked generate key pair and sign functions * fix: fixed verify function * fix: updated sign and verify function with ECkey * fix: Fixed jvm test for sign and verify * fix: Fixed verify parameter * fix: Added JWK object into payload body * fix: Added signing for EntityConfigurationStatement * feat: create Entity Configuration Statement JWT --------- Co-authored-by: Robert Mathew <robert.c.mathew@gmail.com> * feat: implement fetch endpoint * fix: entity statement response content type * feat: implement subordinate metadata * fix: ci java dist * feat: oidf client module * feat: Implemented KMS, JWKS generation and JWT sign * fix: Test dependencies * feat: Created sign and verify jwt functions * refactor: Added trailing new line to the files * fix: Removed some targets temporarily to fix build issues. * refactor: made the second paramenter of functions a Map without default value and refactored the key generation * refactor: Fixed build issues and removed commented-out code * fix: Fixed failing test and null pointer exception * chore: Removed redundant HTTPCache * chore: Uncommented ios targets back * refactor: refactored serializeNullable() * refactor: refactored deserialize() * refactor: refactored OutgoingEntityStatementContent.bytes() * refactor: refactored the tests to use assertEquals() * refactor: Fixed dependencies and made the protectedHeader a param * refactor: Fixed code formatting * refactor: Changed the response body to jwt string * refactor: Removed unnecessary converter * refactor: Made JWT payload and header classes to be used as input * fix: add missing repositories for windows (#22) * fix: add missing repositories for windows * fix: update ci docker compose command * feat: implement jwk persistence * fix: remove unused statement * fix: github CI * feat/OIDF-51 - Implement Persistence Module (#21) * merge oidf-7 * fix: models package * fix: openapi TrustMarkOwner property * fix: create account method return type * fix: rename file for consistency * feat: implement migration * fix: repository dependency * fix: add missing trailing new line * feat: implement services module * fix: package path * fix: remove unused file * fix: add missing entity to openapi spec * feat: persist generated keys * fix: typo * fix: missing deps * fix: ci docker command * fix: dependency * fix: remove unnecessary statement * feat: abstract jwk to its own module * chore: Trust Chain validation implementation * feat: encrypt private keys when saving to database * feat: add note to README regarding usage of Local KMS in prod envs * fix: adapt key encryption test cases for when APP_KEY is null * fix: adjust function name * fix: add kotlin-js-store to gitignore * fix: clean common gradle file * fix: disable android build * fix: Fixed merging issues * fix: Fixed coroutine issue * fix: Fixed build trust chain * fix: Fixed response headers * chore: Build the trust chain * refactor: Adjusted the trust chain validation to the models * refactor: Adjusted the trust chain validation with the local-kms and removed dead code * refactor: Removed service jvm folders and files * chore: Added trust chain structure test * refactor: Renamed op folder to validation * chore: Added trust chain validation test * chore: Added support to Subordinate Statements * chore: Trust Chain Validation refactoring - Separate Entity Configuration Statement from Subordinate Statements * chore: Trust Chain Validation refactoring - Build Trust Chain for testing * chore: Trust Chain Validation refactoring - Enabled JS in local-kms module, * chore: Trust Chain Validation refactoring - Moved client to its own module * chore: Trust Chain Validation fixed broken tests - * chore: Added jwk and jwt folder to openid-federation-common * chore: Fixed jsMain module and implemented tests * chore: Moved most part of the code to the common module * refactor: Moved retrieveJwk function to commonMain * refactor: Created JWT service that accepts callbacks and adjusted the code. * feat: implement resolve trust chain * fix: clean object mapping * fix: remove constraints temporarily * fix: extend trust chain build test * fix: trust chain resolve method * fix: get http engine automatically if none informed * feat: extract helper functions * feat: pass fetchservice as param * fix: ci * fix: js test * fix: fetch initialization * feat: implement client class * fix: oid client js export * fix: fetch class * fix: indentation * fix: js validateTrustChain return type * fix: resolve trust chain method name * feat: implement crypto module in client * feat: implement js verify function callback in test * fix: openapi jwk spec * fix: implement reference time on verify test * fix: code cleanup * fix: clean tests * fix: code cleanup * fix: move logger to own module * fix: make Trustchain a class to simplify dep injection * fix: verify function * fix: refactor helpers * fix: refactor * fix: refactor * fix: reorder authority hints to process trust anchors first * fix: add maxDepth parameter to trust chain resolution * fix: refactor jwk model structure * fix: subordinate jwks * fix: export ICryptoServiceCallback to JS * fix: pass callback constructors to oidf client js * chore: docker production updates * chore: docker production updates * chore: docker production updates * chore: revert docker compose ports updates * refactor: Refactored OIDF-Client according to mdoc-cbor-crypto-multiplatform * fixed: Fixed general bugs * refactor: Picking common dependencies from libs.versions.toml * refactor: Moved the trust chain to a callback * refactor: Created js tests * refactor: Created tests for jvm and js in their respective folders * fix: Libraries compatibility: openapi generator, kotlinx coroutines and ktor client * fix: Fixed issues with the implementation of the Default Trust Chain implementation. * refactor: Removed println(...) * refactor: Added the rest of the libraries to libs.versions.toml * chore: adding publishing configs * chore: adding publishing configs * chore: reverted db ports in compose * chore: fixed NEXUS_USERNAME env var * chore: fixed NPM_TOKEN env var * chore: open-api package rename due to npm issues * fix: Fixed the mangled filed names in JS * chore: also publish openid-federation-client * chore: added Default fetch service * chore: added generateTypeScriptDefinitions * feat: adjust federation fetch endpoint to new spec without iss param * fix: subordinate statement source endpoint --------- Co-authored-by: Zoe Maas <zmaas@sphereon.com> Co-authored-by: sanderPostma <spostma@sphereon.com> * fix: revert fetch endpoint call to previous spec * fix: docker build * eol=lf * Feat/oidf 65 3 (#43) * fix: clean up tests * fix: implement js client adapter and interfaces * reorganize code * fix: verify key type * fix: remove iss from fetch endpoint * Feature/oidf 65 2 (#45) * update version * update dockerfile versions * revert urlsafe decode * revert urlsafe decode * implement TrustChainResolveResponse * export interface from root to JS (#46) * export interface from root to JS * upgrade gh actions gradle setup * chore: iterated Docker production scripts * fix: subordinate statement metadata * chore: version bump * chore: fix subordinate jwk fetch * feat: improve error responses (#47) * feat: improve error responses * fix: openapi specs * feat: implement subordinate delete * fix: update openapi spec * chore: variable convention * Feature/oidf 34 (#48) * export interface from root to JS * upgrade gh actions gradle setup * change publish order * make exception type more generic * chore: add keycloack to docker compose * save * feat: enable jwt verification on protected routes * feat: add identifier field on tenant account * chore: updates openapi spec * fix: keycloak-dev docker compose * chore: update README * Feature/oidf 73 (#49) * feat: implement Trust Mark Definitions * feat: implement Trust Mark Types and Issuers * chore: update openapi spec * chore: update openapi spec * feat: implement Trust Mark object builder * feat: implement federation trust mark endpoints * chore: add configuration guide to readme * chore: update openapi spec * feat: implement received trust marks * chore: fix openapi spec * feat: finish trust mark implementation * chore: clean env file * chore: update README * Feature/oidf 39 (#50) * improve log and refactor * pass username in header * code refactor * chore: move constants to common * update readme * clean db config * fix unresolved ref * fix unresolved ref * clean services * get root identifier from application properties * extend logging feature and implement admin log endpoints * fix log class * update openapi spec * clean code * fix build errors * extend logging * change filter order * feat: add technologies file * Feature/oidf 77 (#51) fix too many db connections * Feature/oidf 63 (#52) * implement db singleton pattern * fix: remove db initialization from the springboot servers * disable datasource autoconfigure in federation server * feat: publish to dockerhub * chore: ignore logs * fix: docker hub deployment to correct account * fix: reuse build artifacts * fix: version bump on commit * fix: move built jars to a place Dockerfile expects * feat: tag and push to docker hub * fix: semver compatibility * fix: semver compatibility * fix: versioning docker tag pattern * chore: remove wrong reference * fix: leave only semver active * fix: only deploy to dockerhub on main and develop --------- Co-authored-by: Robert Mathew <robert.c.mathew@gmail.com> Co-authored-by: Niels Klomp <nklomp@users.noreply.github.com> Co-authored-by: sanderPostma <spostma@sphereon.com> Co-authored-by: Zoe Maas <zmaas@sphereon.com> Co-authored-by: maikel-maas <86769796+maikel-maas@users.noreply.github.com> * feat: implement trust chain validation * feat: implement trust chain validation * chore: remove files * chore: remove wrong files * chore: remove wrong files * chore: update version * chore: reorganize file structure * chore: clean console log * chore: extend debug logging * Trust Mark Validation (#56) * feat: implement trust mark validation * feat: implement trust mark verify in js client * Implement Http Resolver with Cache (#57) * feat: implement http resolver and cache * fix: httpclient mock * fix: remove deprecated files * Feature/oidf 82 (#58) * chore: verify and clean specs * chore: add header auth to endpoints * chore: add root as default account header param * chore: allow for create accounts with deleted usernames * chore: clean * chore: adjust version * chore: remove unused dependency * chore: update README openapi reference * chore: remove swaggerhub reference * chore: remove annotation --------- Co-authored-by: Robert Mathew <robert.c.mathew@gmail.com> Co-authored-by: Niels Klomp <nklomp@users.noreply.github.com> Co-authored-by: sanderPostma <spostma@sphereon.com> Co-authored-by: Zoe Maas <zmaas@sphereon.com> Co-authored-by: maikel-maas <86769796+maikel-maas@users.noreply.github.com>
- Loading branch information