Skip to content

Separate authentication response building steps in SiopWallet

Created by: acrusage-iaik

Separates the response building into two phases, allowing the user of the library to select credentials and attributes to be disclosed, but leaves the original logic in tact using default submissions

  • Change OidcSiopWallet:
    • Add startAuthorizationResponsePreparation: Gathers data necessary for presentation building and yields a AuthorizationResponsePreparationState
    • Add finalizeAuthorizationResponseParameters: Returns what createAuthenticationParams returned before, but also takes in AuthorizationResponsePreparationState and an optional non-default submission
    • Add finalizeAuthorizationResponse: Returns what createAuthenticationResponse did before
  • Add AuthorizationResponsePreparationState: Holds data necessary for presentation building
  • Add AuthenticationRequestParser: Extracted presentation request parsing logic from OidcSiopWallet and put it here
  • Add AuthorizationRequestValidator: Extracted presentation request validation logic from OidcSiopWallet and put it here
  • Add PresentationFactory: Extracted presentation response building logic from OidcSiopWallet and put it here
    • Also added some code for presentation submission validation

Merge request reports