Démarrage
Création d'une chaîne de confiance
Afin de pouvoir utiliser les SDK Hellocare, nous devons au préalable assurer l'authenticité de votre système. L'étape indispensable est l'échange de clés cryptographiques asymétriques pour le chiffrement et déchiffrement des jetons d'échange.
Par convention, on appelle la clef de déchiffrement la clef privée et la clef de chiffrement la clef publique. La clef qui est choisie privée restera uniquement en votre possession alors que la clef qui est choisie publique sera liée à votre compte intégrateur.
Génération du certificat de déchiffrement
C'est possible par la génération d'un certificat sur votre serveur à l’aide de la clé privée de l'utilisateur.
Création d’une paire de clés sur votre serveur
Même si votre serveur d'intégration possède déjà une paire de clés de chiffrement, nous vous conseillons d'en générer une nouvelle qui ne sera utilisée que pour la signature des JWT. Pour cela, vous pouvez lancer la commande suivante :
ssh-keygen -t rsa -b 2048 -m PEM
Génération du certificat d'identité numérique
Vous allez maintenant devoir effectuer une demande de signature de certificat (CSR pour Certificate Signing Request). Le CSR contient les informations d'identification de votre organisme.
Voici les informations typiquement présentes dans un CSR :
Common Name (CN=)
Le nom complet du domaine Internet à sécuriser par exemple « hellocare.com ».
Nom de l'entreprise / Organisation (O=)
Nom d'une société ou d'une association légalement constituée.
Nom du département / Unité Organisationnelle (OU=)
Par exemple RH, finance, informatique
Localité (L=)
Par exemple Paris, Londres
Province, Région ou État (ST=)
Par exemple Normandie, Ile-de-France
Pays (C=)
Le code à deux lettres ISO pour le pays où est situé l'organisme. Par exemple FR, CA
Une adresse e-mail
Une adresse e-mail pour contacter l'organisation. Habituellement l'adresse email de l'administrateur de certificats
Exemple de script de génération de certificat
#!/usr/bin/env bash
PRIVATE_KEY_PATH=${1:-"~/.ssh/id_rsa"}
OUTPUT_DIR=${2:-"keys"}
openssl req -new -key $PRIVATE_KEY_PATH \
-out $OUTPUT_DIR/server.csr \
-subj "/C=FR/ST=PACA/L=La Ciotat/O=Hellocare/OU=Hellocare Platform/CN=hellocareplatform.com"
openssl x509 -req -days 3650 -in $OUTPUT_DIR/server.csr \
-signkey $PRIVATE_KEY_PATH \
-out $OUTPUT_DIR/certificate.crt
Veillez à bien modifier les informations par celles de votre entreprise:
-subj "/C=FR/ST=PACA/L=La Ciotat/O=Hellocare/OU=Hellocare Platform/CN=hellocareplatform.com"
Note: Dans l'exemple la durée de validité du certificat à été fixée à 10 ans (-days 3650
)
Veillez à ne pas mettre une valeur trop basse afin de ne pas interrompre le service.
Il n'y a actuellement aucun mécanisme de vérification de l'expiration des certificats. Il est donc de votre responsabilité de nous fournir un nouveau certificat avant l'expiration du précédent.
Transmission du certificat
Lorsque vous aurez correctement généré votre certificat, vous pouvez nous le transmettre directement par email: support@hellocareplatform.com pour être associé à votre compte entreprise.
Après réception et traitement par notre équipe, les jetons générés par votre système pourront être autorisés.
Clés API
Lorsque votre compte entreprise aura été autorisée sur notre plateforme, nous génèrerons en vous enverrons un trousseau de clés API à utiliser pour les appels REST:
Chaque trousseau est composé de 2 clés:
- Une clé API
test
pour une utilisation sur la sandbox - Une clé API
live
pour une utilisation en production
Les clés de test ne sont pas autorisées en production et vice-versa.