Skip to content

feature: ces integration

Denis Sukhoroslov requested to merge feature/ces-integration into main

The initial CES integration implementation provided. In order to turn subscription for CES events on set the subscriber.impl setting to ces and provide proper subscriber.url value. Current implementation process events in the following way:

  • request bunch of events (see subscriber.page-size setting) from CES at configured schedule (see subscriber.fixed-rate setting)
  • for every received event:
    • parse event, get data VC from it
    • get credentialSubject array from VC
    • for every subject - check its gx:type field
    • if it is gx:LegalParticipant or gx:ServiceOffering then takes subject.id field and process it according to its schema:
      • if schema is https then it loads VC from the url provided
      • if schema is did then it resolves DID document via Universal Resolver
      • else skips subject processing
    • then resolved content verified with VerificationService
    • if SD verified successfully then it is stored in FC DBs
    • every event is also stored in ces-tracker table in order to see which events were already processed and processing failures

Additional features can be implemented in separate MRs:

  • posting SDs to CES
  • gx:integrity check
  • gx:type resolution via Schemas
Edited by Denis Sukhoroslov

Merge request reports