-
Notifications
You must be signed in to change notification settings - Fork 0
Implementation example Multibanking
This page describes the sample use cases for Multibanking and the corresponding access control implementation according to Consent Management.
In Multibanking a customer wants to do multibanking: Example - The customer also wants to view information from his account at FI2 via the portal of FI1.
- The customer is already a customer of both FI1 and FI2 and has a corresponding (secure) login to both.
- Both FIs are already registered with the TCA (Trusted Central Authority), which can also be one of the FIs if they agree upon. This means that both can communicate securely with each other and confirm that both have implemented the necessary APIs (e.g., XS2A) and a corresponding authorization service as described in Consent Management is in place.
- Customer is logged into FI1 and wants to use multibanking with FI2. Since both FI1 and FI2 are registered with the TCA, the customer can select FI2 from a list in the FI1 portal.
- The customer gives his consent (defined according to FI1 guidelines) for the connection in the FI1 portal. He then signs in to FI2 via the FAPI flow (FAPI-Flow 2: FI/TPP Initial consent) in order to give his consent there as well (defined according to FI2 guidelines). Afterwards, the FIs are sure that the customer has given the consent. The two accounts are now "linked" to each other.
- The customer can access information from FI2 on FI1. In the background, the FAPI Flow (FAPI-Flow 3/4: FI/TPP data exchange) is used to securely retrieve the desired information.
Adapted flows to CH / Common API situation.
Common flows are:
- Establish FI/TPP secure communication
- FI/TPP initial consent
- FI/TPP data exchange with additional consent
- FI/TPP data exchange without additional consent
- FI/FI consent & data exchange: Same flow as for FI/TPP (a second FI takes the role of the TPP). E.g. for Multibanking use cases
- In addition to the Common APIs, FIs also provide their authorisation endpoint via discovery service.
- For communication between TPP and FI, they must both be classified as trustworthy.
- To avoid that every TPP has to establish a trust with every FI, a Trusted Central Authority takes over the registration of FIs and TPPs and issues certificates/keys. With the registration process, the TCA ensures that only FIs and TPPs that meet all required security guidelines are approved.
- The TCA provides a directory in which all registered FIs and TPPs can be found.
- The TCA ensures that issued certificates/keys can be revoked.
- Communication between TPP and FI are secured by MTLS or HoK (private_key_jwt).
- A TPP would like to be able to offer its services to customers and FIs. Therefore the TPP registers himself to the TCA. After a check, the TPP is entered in the DB of the TCA and receives the corresponding certificates/keys.
- The TPP manages the certificates/keys with which it can secure the respective communication channels to the FIs at a later time.
- An FI wants to provide value to its customers and therefore be accessible to TPP. The FI registers with the TCA for this purpose and receives the corresponding certificates/keys after a check.
- The FI manages the certificates/keys with which it can later secure the respective communication channels to the TPPs.
- The TPP or FI shows the customer which FIs or TPPs are registered and can therefore be linked by the customer for additional services.
In order for a TPP to maintain relations with FIs on behalf of a customer, the customer's consent is required. With this initial consent, the TPP can query general data of the customer and, if necessary, map different identities with FIs to one identity in the TPP.
- Strong customer authentication on the portal of a TPP.
- The customer wants to connect his FI with the TPP and initiates the link.
- The TPP authenticates itself to the FI (AS) via MTLS or HoK (private_key_jwt) and triggers a pushed authorisation request (PAR).
- The customer follows the link from the TPP (PAR) and is authenticated by the FI (AS) (front channel).
- The FI asks the customer if he wants to couple his account to TPP.
- The customer gives permission to the TPP and the FI provides the customer with an authorisation code (front channel).
- The customer handles the code to the TPP and the TPP exchange this code at the FI (AS) to tokens (back channel) for later use.
- The TPP manages the tokens for later data queries to the FI. The linked FI is displayed in the portal.
- To exchange data between a TPP and FI via Common API, the TPP needs so-called access tokens. The access tokens authorise the TPP to use certain services.
- The TPP receives an access token from the FI authorization server. The customer has to give his consent (in case of sensitive actions as payments). This means that the customer must authenticate himself to the FI (AS) and confirm the desired action of the TPP.
- For security reason access token are bound to a TPP/FI communication channel.
- Strong customer authentication on the portal of a TPP.
- The customer wants to see general information about his accounts from an FI and requests it in the TPP portal.
- The TPP authenticates itself to the FI (AS) via MTLS or HoK (private_key_jwt) and triggers a pushed authorisation request (PAR).
- The customer follows the link from the TPP (PAR) and is authenticated by the FI (AS) (front channel).
- The FI asks the customer if he wants to allow TPP to query accounts informations.
- The customer gives permission to the TPP and the FI provides the customer with an authorisation code (front channel).
- The customer handles the code to the TPP and the TPP exchange this code at the FI (AS) to tokens (back channel).
- With the received token the TPP accesses the FI (Common API) and queries the data. The channel is also protected by MTLS or HoK (private_key_jwt).
- The TPP processes the data and presents it to the customer.
RAR is used for fine-grained authorisations. E.g. the customer wants to initiate a payment to the FI of 35.- Fr. via TPP. The customer is then directed to the FI (AS) via RAR (front channel) where he must confirm the payment.
- Strong customer authentication on the portal of a TPP.
- The customer wants to see general information about his accounts from an FI and requests it in the TPP portal.
- The TPP checks whether the user has already linked the desired FI and provides the associated tokens from local DB.
- The TPP accesses the FI with the tokens and requests the corresponding data.
- The TPP processes the data and presents it to the customer.
SFTI | ca-security
Wiki
API Security & Consent Management
- Foundations and assumptions
- Basic API Security Principles
- FAPI 2.0 Swiss Security Profile
- Consent Management
- Implementation example Multibanking
- Strong Customer Authentication (SCA)
- Glossary and terminology
Version Management
Implementation Guidelines