liveBook · Manning

FAPI

As explained in Secure APIs

FAPI 2.0 is the broader version of FAPI that applies strengthened security requirements across financial and other high-security API domains.

FAPI is an OpenID Foundation standard for APIs with high-security requirements. FAPI 1.0 targeted financial APIs; FAPI 2.0 broadens the approach to domains such as healthcare and adds security requirements. section 10.2

FAPI constrains OAuth 2.0 and OpenID Connect to protect three things: authorization, authentication, and session integrity. It prevents attackers from using another user’s access token, impersonating users, or tampering with authorization messages. section 10.3 section 10.2

A payment authorization attack

A user already signed in to an identity provider visits a malicious site. The site sends a forged authorization request, causing an authorization code to leak; it can then exchange that code for an access token. FAPI addresses this risk through authenticated clients, protected request handling, and integrity-protected responses. section 10.7

A FAPI 2.0 deployment organizes security around these requirements:

  • Use confidential clients, whose server-side code can securely store credentials and authenticate authorization-server requests. section 10.4
  • Use the security profile for baseline access-token issuance and sensitive resource-server access. section 10.4
  • Use JAR, PAR, and JARM to protect authorization requests and responses from tampering. section 10.7
  • Use message signing when nonrepudiation is needed for legally or financially consequential actions. section 10.2 section 10.7
  • Use sender-constrained tokens, such as certificate-bound or DPoP tokens, so stolen tokens cannot be used freely. section 10.7

How Secure APIs covers it

How deep it goes
Defines profiles, threats, roles, and protections, then stops short of a complete implementation.
Examples
Uses payment authorization, healthcare account impersonation, stolen-token scenarios, authorization requests, and signed JWT responses.
What it assumes
Builds on OAuth 2.0, OAuth best current practices, and OpenID Connect while defining a more constrained security profile.
What you can do after
Evaluate/understand FAPI security goals, profiles, actors, token protections, and request or response integrity mechanisms.
How it connects
Connects OAuth 2.0, OpenID Connect, access tokens, ID tokens, CSRF, PAR, JAR, JARM, DPoP, and nonrepudiation.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Secure APIs. The section links point to the parts of the book it draws on.