Arborescence des pages

Vous regardez une version antérieure (v. /wiki/pages/viewpage.action?pageId=614989894) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 4) afficher la version suivante »

2 encodeurs sont disponibles dans ESUP-SGC, ils se lancent via JavaWebStart (JWS) depuis un fichier JNLP téléchargeable depuis le serveur esup-sgc. Pour que cela fonctionne, et vis à vis des contrôles de sécurité Java, les jar pointés par les fichiers JNLP doivent être signés.

  • esup-sgc-client : encodeur livré sous forme de jar dans les sources d'esup-sgc ; le jar livré est signé par Vincent Bonamy de l'Université de Rouen ; vous pouvez le recompiler et le signer vous-même, mais ce n'est pas obligatoire.
  • esup-sgc-client-zxp3 : encodeur 'de masse' utilisant unz zxp3, il dépend de jar et dll Zebra que l'on ne peut s'autoriser à distribuer ; si vous souhaitez utiliser cet encodeur, vous devez le compiler vous-même (et signer le jar par vous-même).

Signature du jar

La signature du jar est appelée dans la tâche maven sign (intégrée au packaging mvn package). Dans le fichier pom.xml de esup-sgc-client (et esup-sgc-client-zxp3) vous trouvez la configuration suivante : 

<configuration>
  <keystore>src/etc/keystore.jks</keystore>
  <alias>server</alias>
  <storepass>leocarte</storepass>
  <keypass>leocarte</keypass>
 </configuration>

Le fichier src/etc/keystore.jks doit contenir un certificat de signature de code.

Au travers de Renater, notre communauté a accès à ce type de certificats via https://www.digicert.com/secure/ . Ce certificat est donné à une personne pour signer du code, cette personne peut demander un tel certificat via  https://www.digicert.com/secure/ .

Pour le constituer un certain nombre d'étapes sont à réaliser.

Vous devez premièrement générer un keystore : 

 keytool -genkeypair -dname "CN=Université de Rouen, L=MONT SAINT AIGNAN, C=FR" -alias mykeystore -keyalg RSA -keysize 2048 -keystore keystore.jks -validity 3650 -storetype JCEKS

Ici on tapera esupesup comme mot de passe à chaque fois.

Vous générez ensuite un CSR : 

keytool -certreq -alias mykeystore -keyalg RSA -file keystore.csr -keystore keystore.jks -storetype JCEKS

Une fois le CSR obtenu et depuis l'interface digicert  https://www.digicert.com/secure/  vous pouvez demander un 'Code Signing Certificate'. Cette demande se fait par formulaire dans lequel on vous demande le CSR préalablement généré.

Une fois obtenu, validé, vous pouvez télécharger le certificat (ou plutôt les) sous forme d'un (seul) fichier p7b (Best format for Sun Java).

Vous importez ce fichier dans votre keystore : 

keytool -importcert -alias mykeystore -trustcacerts -file universit___de_rouen.p7b -keystore keystore.jks -storetype JCEKS

Si vous avez suivi ces instructions, votre fichier pom.xml doit être modifié pour avoir cette configuration : 

<configuration>
  <keystore>src/etc/keystore.jks</keystore>
  <alias>mykeystore</alias>
  <storepass>esupesup</storepass>
  <keypass>esupesup</keypass>
 </configuration>

ESUP-SGC-CLIENT

Esup-sgc-client est l'application permettant d'encoder les cartes Mifare Desfire EV1 dans le cadre du Système de gestion de carte ESUP-SGC. Le client s’appuie aussi sur la plateforme ESUP-NFC-TAG qui calcule les commandes (APDU) à transmettre à la carte.

L'application est packagée sous la forme d'un jar comprenant les dépendances : esupsgcclient-1.0-SNAPSHOT-jar-with-dependencies.jar. Le jar destinée à être lancé en mode java web start (jws) depuis l'application web Esup-sgc

Lors du lancement de l'application via ESUP-SGC -> Apps -> Encodeur (ou Encodeur - robot ZXP3) ESUP-SGC crée automatiquement un périphérique dans ESUP-NFC-TAG.

Fonctionnalités

  1. L'application lit le QR code imprimé sur la carte à encoder qui correspond à l'identifiant du futur propriétaire de la carte.
  2. Demande la selection dans esup-sgc de l'individu à encoder
  3. L'application recupère les commandes à executer sur la carte via esup-nfc-tag-server
  4. Validation de l'encodage et activation de la carte
  5. Éventuellement encodage de l'application CROUS ( voir https://www.esup-portail.org/wiki/display/SGC/FAQ#FAQ-Peut-onencoderl'applicationCROUSquandonutilisedescartesvierges)

Environnement

Logiciel

  • L'application est prévue pour tourner sur du java 8. Elle est lancée en JWS il faudra donc autoriser l'application qui va demander tous les droits sur la machine cliente.
  • L'application fonctionne sur Linux ou Windows 10 64bits (l'encodage CROUS necessite Windows 10 64bits)
  • pour l'encodage de l'application CROUS le pilote OMNIKEY CardMan 6121 (pilote)

Materiel

L'application nécessite :

 

  • une webcam gérant la résolution VGA (640x480)
  • un lecteur de carte compatible PC/SC
  • pour l'encodage de l'application CROUS il faut connecter la clé SAM OMNIKEY CardMan 6121 avec sa carte sim

 

La webcam est placée pour filmer le lecteur de carte (procéder à la mise au point si besoin). Lorsqu'une carte est posée sur le lecteur de carte, la webcam détecte le QR code et la procédure d'encodage démarre

Documentation de mise en œuvre ESUP-SGC / ESUP-NFC-TAG#SGC/ESUP-NFC-TAG-Installationmaterielle

Sources : https://github.com/EsupPortail/esup-sgc-client

git clone https://github.com/EsupPortail/esup-sgc-client.git

Compilation esup-sgc-client

Dans le dossier esup-sgc-client executer : 

mvn clean package

A la fin de la compilation le jar esupsgcclient-1.0-SNAPSHOT-jar-with-dependencies.jar va être signé (l'application doit être signée car elle demande une élévation de droits au lancement). Le keystore pour la signature est déclaré dans le pom.xml :

<configuration>
	<keystore>src/etc/keystore.jks</keystore>
	<alias>server</alias>
	<storepass>leocarte</storepass>
	<keypass>leocarte</keypass>
</configuration>

 

Copier le fichier esupsgcclient-1.0-SNAPSHOT-jar-with-dependencies.jar à la racine de votre webapp esup-sgc ou dans vos sources sous src/main/webapp/ avant de compiler esup-sgc

ESUP-SGC-CLIENT-ZXP3

Esup-sgc-client-zxp3 est l'application permettant d'encoder les cartes Mifare Desfire dans le cadre du Système de gestion de carte Esup-sgc. Elle est identique à Esup-sgc-client mais elle utilise une imprimante Zebra ZXP3 pour automatiser l'encodage.

Environnement

Logiciel

 

  • OS Windows 10 64bits (L'application devrait pouvoir tourner sous Linux si l'encodeur SDI010 est bien reconnu)
  • L'application est prévue pour tourner sur du java 8. Elle est lancée en JWS il faudra donc autoriser l'application qui va demander tous les droits sur la machine cliente.
  • Le pilote Zebra ZXP3
  • Le pilote PCSC SDI010
  • Le SDK Zebra linkos
  • Pour permettre l'encodage CNOUS il faut utiliser une machine windows 64bits pour lancer le client et il faut avoir installé l'application CNOUS Espu-sgc-cnous (voir esup-sgc-client)

Materiel

L'application nécessite :

  • une webcam gérant la resolution VGA (640x480)
  • une imprimante Zebra ZXP3 avec encodeur SDI010
  • Pour l'encodage de l'application CNOUS il faut connecter la clé SAM OMNIKEY CardMan 6121 avec sa carte sim

La webcam est placée dans l'imprimante (qui reste ouverte) pour filmer le lecteur de carte. Il faut donc placer quelque chose dans le capteur de fermeture du couvercle. voir : https://www.esup-portail.org/wiki/pages/viewpage.action?pageId=613384398

Reglage offset lecteur sans contact à 0

Via les outils du driver (sous windows "Propiétés de l'imprimante > Device Settings > Tools > Command to send to printer") lancer la commande : +OS 0

réponse : 0 <ACK>

Installation des dépendances ZSDK_API et ZSDK_CARD_API

Pour communiquer avec la Zebra ZXP3 esup-sgc-client-zxp3 utilise le SDK Zebra. Pour fonctionner il est installé en tant que depot maven local.

Le sdk se récupère à cette adresse : https://www.zebra.com/fr/fr/products/software/barcode-printers/link-os/link-os-sdk.html

Après l'installation du mpsdk-installer il faut copier les deux jar présents dans le dossier link_os_sdk/PC-Card/v2.12.3968/lib

ZSDK_API.jar, renomé ZSDK_API-2.12.3968.jar, dans le dossier src/lib/com/zebra/sdk/comm/ZSDK_API/2.12.3968/

ZSDK_CARD_API.jar, renomé ZSDK_CARD_API-2.12.3968.jar, dans le dossier src/lib/com/zebra/sdk/common/card/ZSDK_CARD_API/2.12.3968/

Il faut, de plus, copier les dll ZebraNativeUsbAdapter_32.dll et ZebraNativeUsbAdapter_64.dll dans c:\Windows\System32 du poste client

documentation du SDK : http://techdocs.zebra.com/link-os/2-12/

Compilation esup-sgc-client-zxp3

Dans le dossier esup-sgc-client executer :

mvn clean package

A la fin de la compilation le jar esupsgcclient-r2d2-1.0-SNAPSHOT-jar-with-dependencies.jar va être signé (l'application doit être signée car elle demande une élévation de droits au lancement) Le keystore pour la signature est déclaré dans le pom.xml :

<configuration>
	<keystore>src/etc/keystore.jks</keystore>
	<alias>server</alias>
	<storepass>leocarte</storepass>
	<keypass>leocarte</keypass>
</configuration>

Copier le fichier esupsgcclient-r2d2-1.0-SNAPSHOT-jar-with-dependencies.jar vers esupsgcclient-r2d2.jar à la racine de votre webapp esup-sgc ou dans vos sources sous src/main/webapp/ avant de compiler esup-sgc

 

  • Aucune étiquette