Service Layer high complexity backend
1
Dependencies
1
Dependents
2
Entities
0
Integrations

Description

Implements the Vipps Login API (OpenID Connect) provider on the Authentication Module backend. Exposes /auth/vipps/initiate and /auth/vipps/callback endpoints, manages PKCE state, extracts the sub claim as the Vipps user identifier, and optionally retrieves the national identity number when the nnin scope is granted. Delegates session issuance to Auth Service once identity is confirmed.

Feature: Vipps Authentication

vipps-integration-service

Responsibilities

  • Generate PKCE code verifier and state parameter for /auth/vipps/initiate
  • Exchange authorization code for ID token via Vipps token endpoint
  • Validate ID token signature and claims (iss, aud, exp, nonce)
  • Extract sub claim as Vipps user ID and conditionally extract nnin
  • Upsert user record and delegate to Auth Service for session issuance

Interfaces

initiate(): VippsAuthorizationUrl
handleCallback(code: String, state: String): AuthResult
exchangeCodeForTokens(code: String, verifier: String): VippsTokenSet
validateIdToken(idToken: String): VippsIdentityClaims
resolveOrCreateUser(claims: VippsIdentityClaims): User

Relationships

Dependencies (1)

Components this component depends on

Dependents (1)

Components that depend on this component

Related Data Entities (2)

Data entities managed by this component