Skip to content

Conversation

@constantine2nd
Copy link
Collaborator

Files Created

  1. server/types/berlin-group.ts

    • TypeScript interfaces: BerlinGroupConfig, BerlinGroupHeaders, BerlinGroupSessionData
  2. server/services/BerlinGroupSignatureService.ts

    • New @service() class that: - Loads private key and certificate PEM files from VITE_BG_PRIVATE_KEY_PATH and VITE_BG_CERTIFICATE_PATH at construction - isEnabled() checks if certificates are loaded - static isBerlinGroupPath(path) detects "/berlin-group/" in request paths - generateHeaders(method, body, consentId?) generates required PSD2 headers: Date X-Request-ID Digest (SHA-256) Signature (RSA-SHA256) TPP-Signature-Certificate PSU headers Redirect URIs (POST only) Optional Consent-ID

Files Modified

  1. server/services/OBPClientService.ts
    • get(), create(), update(), discard() now check isBerlinGroupPath() && isEnabled()
    • Routes Berlin Group requests to new private method requestWithBerlinGroupHeaders()
    • Merges signature headers with op

Files Created

1. server/types/berlin-group.ts
   - TypeScript interfaces: BerlinGroupConfig, BerlinGroupHeaders,
     BerlinGroupSessionData

2. server/services/BerlinGroupSignatureService.ts
   - New @service() class that:
     - Loads private key and certificate PEM files from
       VITE_BG_PRIVATE_KEY_PATH and VITE_BG_CERTIFICATE_PATH at
       construction
     - isEnabled() checks if certificates are loaded
     - static isBerlinGroupPath(path) detects "/berlin-group/" in
       request paths
     - generateHeaders(method, body, consentId?) generates required PSD2
       headers:
       Date
       X-Request-ID
       Digest (SHA-256)
       Signature (RSA-SHA256)
       TPP-Signature-Certificate
       PSU headers
       Redirect URIs (POST only)
       Optional Consent-ID

Files Modified

3. server/services/OBPClientService.ts
   - get(), create(), update(), discard() now check
     isBerlinGroupPath() && isEnabled()
   - Routes Berlin Group requests to new private method
     requestWithBerlinGroupHeaders()
   - Merges signature headers with op
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant