Sécurisation de la couche transport API REST Pro Santé Connectée
1.2.0 - ci-build
This page is part of the Sécurisation de la couche transport API REST (v1.2.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions
Certains services cibles Pro Santé Connectés nécessitent l’envoi de données métiers complémentaires concernant le LPS, le proxy API ou l’activité du PS.
OAuth 2.0
.actor_token
spécifié dans le protocole OAuth 2.0
.Pour les services historiques utilisant l’assertion SAML et qui voudraient minimiser les impacts côté client éditeurs, il est possible de créer une architecture de transition qui utlise l’assertion SAML pour transmette les données métier.
Pour plus précisions pour plus de précisions concernant le flux 13 se référer au document CI-SIS volet transport synchrone Client Lourd et au document CI AMO volet transport synchrone pour les services de l’Assurance Maladie [1].
access_token
de l’API passé à l’en-tête Authorization : Bearer
de la requête.L’ajout du paramètre actor_token [12] dans la requête token exchange permet de transmettre au serveur d’autorisation du service cible des données métiers complémentaires.
L’actor_token_type doit alors y être spécifié conjointement.
Certains services cibles historiques ont besoin des données suivantes :
Paramètres |
Obligatoire d’après la documentation officielle (OAuth 2.0) |
obligatoire pour le service cible |
Valeur |
grant_type |
Oui |
Oui |
urn:ietf:params:oauth:grant-type:token-exchange |
subject_token |
Oui |
Oui |
Access Token PSC |
subject_token_type |
Oui |
Oui |
urn:ietf:params:oauth:token-type:jwt |
actor_token |
Non |
Non |
JWT identifiant : Ø Proxy LPS API Ø Le LPS Ø L’activité du PS |
actor_token_type |
Non |
Non |
urn:ietf:params:oauth:token-type:jwt |
scope |
Non |
Oui |
A déterminer par les équipes métiers = scopes metier |
Exemple de claims du JWT décodé correspondant à l’actor_token
{
"iss":"https://original-issuer.example.net",
"exp": 1441910060,
"sub": admin@example.net,
"lps_nom": <lps_nom>,
"lps_id": <lps_id>,
"lps_version": <lps_version>,
"situation_exercice”: <situation_exercice >
}
Selon les nécessités du service cible, l’access_token
délivré peut être enrichi avec les claims de l’actor_token
fournis lors de la requête.
Le JWT actor_token
dans le cas d’une API Pro Santé Connectée pourrait signé par la clé privée du certificat cachet serveur de la structure porteuse du fournisseur de services.
Cependant, le cas mTLS couvre ce besoin rendant la signature non nécessaire.