CPS

Composant d’intégration de la CPS

L’api CPS3 (même une SPI) proposée par DEVCOOP afin de proposer un niveau d’abstraction suffisant pour un programme java d’accéder à la carte CPS3.

Le document de référence est ASIP_CPS3_Données-métier_v1.0.2.doc

Implémentation

Le module cps-impl, fournit l’implémentation de la CPSFacade qui intègre la Cryptolib CPS de l’ANS.

Exemple de code dans une application Spring Boot :

public class MonComposantCPS {

    @Autowired
    CPSFacade cps;

    public void maMethode() {
        assert cps.isAvailable();
        final List<CardReaderInfo> availableReaders = cps.getAvailableReaders();
        cps.selectReader(0L);
        final CpsCardInfo cardInfo = cps.readInfo();  // Une demande d'authentification auprès de l'utilisateur est réalisée sur cet appel
        assert cps.isLogged();
        final PrivateKey signaturePrivateKey = cps.getSignaturePrivateKey();
   }
}

Personnalisation du PinProvider

La saisie du code Pin est possible à partir du PinProviderFrame développé en Swing.

cps-proxy saisie du code pin

Mais, il est tout à fait possible de fournir son propre provider ou encore utiliser le NoPinProvider, et appelé explicitement la méthode setPin().

Signature PDF

Le module cps-pdf, contient le code permettant de générer des signatures PDF https://helpx.adobe.com/fr/acrobat/using/signing-pdfs.html.

Il s’appuie sur la librairie apache PDF-BOX.

Configuration

Configurer le lien vers la cryptolib CPS

Il est possible de configurer et de surcharger le path par défaut de la cryptolib de la manière suivante :

devbox-sante:
  cps:
    module.path: "C:\\Program Files\\DevBoxSante\\santesocial\\cps\\cps3_pkcs11_w64.dll"

Securité

Le cps-proxy comme tous les composants de la DevBox-Santé est une application web Spring Boot, toutes les possibilités de spring-security sont donc disponibles.

Exemple de configuration de base empêchant toutes les IPs externes :

devbox-sante:
    security:
        forceLocalAddress: true

Licences

“This product includes software developed by Stiftung SIC.” : https://jce.iaik.tugraz.at/products/core-crypto-toolkits/pkcs11-wrapper/#License


REST API

Une interface REST pour accéder à la Carte Vitale

HowTos

Tutoriels liés à la carte CPS

Versions

Note sur les différentes versions de la DevBox-Santé CPS