All insights

Identity & Access

One Identity Authority for Every Bank Channel: Onboarding Legacy, Web, Mobile, and Machine Clients onto WSO2 Identity Server

Converixa EngineeringJuly 12, 202611 min read

Walk through a bank's application estate and you walk through its history: a core-adjacent web portal from 2008 that manages its own sessions, a modern single-page app for corporate clients, iOS and Android apps for retail customers, desktop tools in the treasury back office, overnight batch jobs exchanging files with partners, and teller applications running in terminals at every branch. Each was built in a different era, and most solve authentication their own way — separate credential stores, separate login screens, separate ideas of who a user is. That fragmentation is now the bank's largest silent risk and its biggest drag on channel innovation. The latest WSO2 Identity Server exists to end it: one identity authority that every generation of channel can delegate to, backed by the employee, customer, and partner stores the bank already operates.

The estate is heterogeneous — the identity layer shouldn't be

When each channel authenticates users itself, the bank accumulates parallel security systems it must patch, audit, and explain to regulators separately. Passwords live in places security never sees. A departing employee must be removed from a dozen systems, and usually isn't. Customers meet a different login experience — and a different level of protection — depending on which channel they happen to open. Every new channel repeats the cost, and every audit rediscovers the sprawl.

The remedy is not rewriting thirty years of applications. It is inverting the responsibility: applications stop verifying credentials and instead delegate authentication and authorization to a central identity provider, receiving back standard, verifiable tokens. WSO2 Identity Server is built for exactly this role — it speaks every protocol the estate needs, from SAML 2.0 for the oldest web apps to OAuth 2.1-era flows and passkeys for the newest, so the bank can converge on one authority without forcing a single big-bang migration.

Every channel type has a right way to connect

The reason 'centralize identity' projects stall is that teams try to force one integration pattern onto every application. The standards ecosystem — and WSO2 Identity Server's implementation of it — already defines the correct onboarding path for each class of client the bank runs:

Legacy web applications

Session-based apps from the pre-OIDC era onboard through SAML 2.0 or OIDC without a rewrite — via a lightweight agent, a filter in the app server, or a reverse proxy that fronts the app and translates the modern token into the session the app expects. The app keeps working; the password screen it owned disappears.

Modern single-page web apps

SPAs use the OIDC authorization code flow with PKCE — no secrets in the browser, short-lived access tokens, silent renewal — giving corporate portals and customer web apps bank-grade security with a seamless redirect experience.

iOS & Android mobile apps

Native apps follow the AppAuth pattern: authentication in the system browser (never an embedded webview), authorization code + PKCE, refresh tokens held in the platform keystore, and device biometrics unlocking them — so the customer feels Face ID, while the bank gets standards-grade tokens.

Desktop applications

Back-office and treasury tools authenticate via the native-app OIDC flow with a loopback redirect (RFC 8252) — the desktop app opens the corporate SSO page in a browser, receives its tokens, and inherits the same MFA and session policy as every other channel.

Non-interactive systems

Batch jobs, service daemons, and B2B integrations use the client-credentials grant — with mTLS or private-key JWT instead of shared secrets — and token exchange when they need to act on behalf of a user, giving machine traffic first-class, auditable identity instead of embedded service passwords.

Terminal & CLI applications

Teller terminals, branch green-screen successors, and admin CLIs use the OAuth 2.0 device authorization grant (RFC 8628): the terminal shows a short code, the teller approves it on a browser or phone — with full MFA — and the terminal receives its tokens. Even the most constrained interface joins the central authority.

Delegating to the user stores you already trust

Centralizing authentication does not mean migrating every account into a new database — for a bank, that demand alone would kill the project. WSO2 Identity Server mounts the institution's existing stores side by side as first-class user store domains: employees keep living in Active Directory, partner and service accounts in LDAP, and customers in whatever store the bank built for them — including a custom relational database, connected through the JDBC user store or a purpose-built custom connector against its existing schema and password hashing.

Identity Server authenticates against these stores in place — reading group memberships from AD, verifying customer credentials against the bank's own tables — while presenting one coherent identity to every channel. Where the bank does want to modernize storage, migration can happen gradually and invisibly: users are verified against the legacy hash on first login and transparently re-secured under a modern algorithm, with SCIM 2.0 keeping provisioning and — critically — deprovisioning synchronized across systems. The stores the bank trusts remain the source of truth; they simply stop being twelve separate login systems.

Authorization and adaptive policy, decided in one place

Authentication is only half the delegation. Once channels trust the central authority, authorization policy moves there too. AD group memberships and customer segments become roles and scopes carried in tokens, so a teller terminal, an API, and a mobile app all enforce the same answer to 'what may this user do'. Fine-grained rules — amount thresholds, branch restrictions, four-eyes approval — are expressed centrally rather than re-implemented per application, and paired with WSO2 API Manager the same tokens authorize the APIs behind the channels.

The latest Identity Server also makes that policy adaptive. Conditional authentication scripts inspect context at login — channel, device, network, role, risk signals — and adjust the journey: passkeys and single-factor for a low-risk balance check, step-up MFA for a payment above threshold, a hard block for an impossible-travel login on a privileged account. Security tightens exactly where risk lives, while the everyday path stays smooth enough that channels feel faster after centralization, not slower.

What the bank gains — and how to sequence it

The end state is one auditable answer to every access question. Employees sign on once and reach every entitled tool; customers get the same strong, low-friction login on every channel; leavers are deprovisioned everywhere in one action; and the audit trail regulators ask for is a query, not a quarter-long reconciliation project. New channels stop budgeting for authentication at all — they onboard against the identity layer in days and inherit MFA, session policy, and compliance controls on arrival.

Just as important, the path there is incremental. A typical sequence starts where risk and value concentrate — the customer-facing web and mobile channels — then folds in employee applications via SAML/OIDC, then machine and terminal clients, retiring one bespoke login system at a time. No user store is forcibly migrated, no channel is rewritten, and every step reduces attack surface while visibly improving the experience. That is what makes the program fundable: it pays out at each phase, not only at the end — and it is precisely the kind of program an experienced identity engineering partner de-risks.

Key takeaways

  • A bank's channels span decades — legacy web, SPAs, mobile, desktop, batch, terminals — and each has a standards-defined path onto WSO2 Identity Server: SAML/OIDC agents, PKCE flows, AppAuth, RFC 8252 native flows, client credentials with mTLS, and the RFC 8628 device grant.
  • Centralizing identity does not mean migrating accounts: AD, LDAP, and custom database stores mount side by side as user store domains, with Identity Server authenticating against them in place.
  • Authorization consolidates too — AD groups and customer segments become roles and scopes in tokens, with adaptive scripts applying step-up MFA and risk policy per channel and transaction.
  • The rollout is incremental and self-funding: onboard channel by channel, retire bespoke logins one at a time, and gain single sign-on, one-action deprovisioning, and a regulator-ready audit trail.
Converixa

Converixa Engineering

Security & Identity Practice