-
Dr. Tamas Molnar authoredDr. Tamas Molnar authored
Technical requirements
Java 11 (JDK 11)
Maven
Tomcat 8.5 and superior
Postgres 12 and superior
Reader : Any PC/SC with correct drivers
LDAP or an another database (MySQL for exemple for the users)
Apache shibboleth is required for a production intallation but as the authentication will not be used in a test environment, no need to configure any of this.
These environment involves 3 blocks (+ the campus card app) :
- the card management system : ESUP-SGC
- the reader system : ESUP Nfc tag Server
- the service where the reader is connected : ESUP NFC Tag desktop or ESUP NFC Tag keyboard or ESup-emargement
Installation
Install Esup SGC solutions : Source provides for ESUP-SGC and Esup-nfc-tag-server
Follow the installation and configuration instructions.
Desfire Configuration
In esup-SGC :
Add the configuration for the recognition of the app as a card service : here called for exemple si-service in src/main/resources/META-INF/spring/applicationContext-services.xml
<bean id="cardIdsService" class="org.esupportail.sgcs.cardid.CardIdsService">
<property name="cardIdServices">
<list>
<bean class="org.esupportail.sgcs.cardid.HCECardIdService">
<property name="appName" value="si-service"/>
<property name="postgresqlSequence" value="card_sequence"/-->
</bean>
</list>
</property>
</bean>
In esup-nfc-tag-server :
Add the test DESFIRE application configuration in the applicationContext-custom.xml (src/main/resources/META-INF/spring/applicationContext-custom.xml)
<bean id="desfireAuthEcarte" class="org.esupportail.nfctag.api.impl.DesfireReadConfig">
<property name="desfireKeyNumber" value="01"/>
<property name="desfireFileNumber" value="00"/>
<property name="desfireAppId" value="112233"/>
<property name="desfireIsoId" value="000185000076D2"/> <!--"000185000076D2"/-->
<property name="desfireAppName" value="si-service"/>
<property name="desfireFileOffset" value="000000"/> <!--10-->
<property name="desfireKey" value="FF112233445566778899AABBCCDDEEFF"/>
<property name="description" value="Authentification Desfire SI Service"/>
</bean>
In the applicationContext-desfire.xml
<bean class="org.esupportail.nfctag.beans.DesfireApplication" p:desfireAppId="112233" p:amks="0B" p:nok="83"> <!--p:isoId="000185000076D2" p:desfireAppId="112233"-->
<property name="files">
<util:list>
<bean class="org.esupportail.nfctag.beans.DesfireFile" p:fileNumber="00" p:communicationSettings="03" p:accessRights="1FFF" p:tagWriteApi-ref="eCardTagWriteEsupSgc"/>
<bean class="org.esupportail.nfctag.beans.DesfireFile" p:fileNumber="01" p:communicationSettings="03" p:accessRights="2FFF" p:tagWriteApi-ref="eCardTagWriteEsupSgc"/>
</util:list>
</property>
<property name="keys">
<util:list>
<bean class="org.esupportail.nfctag.beans.DesfireKey" p:keyNo="00" p:keyVer="01" p:key="FF112233445566778899AABBCCDDEEFF"/>
<bean class="org.esupportail.nfctag.beans.DesfireKey" p:keyNo="01" p:keyVer="01" p:key="FF112233445566778899AABBCCDDEEFF"/>
<bean class="org.esupportail.nfctag.beans.DesfireKey" p:keyNo="02" p:keyVer="01" p:key="FF112233445566778899AABBCCDDEEFF"/>
</util:list>
</property>
</bean>
Added a devRemoteUser="eppnOfTheChosenUser " in the src/main/resources/META-INF/spring/security.properties to by-pass authentication in a test environmnent.
Test the reading with the ESUP NFC reader system
clone and install esup-nfc-tag-desktop (https://github.com/EsupPortail/esup-nfc-tag-desktop)
Java FX is needed
Follow the installation & configuration. (https://www.esup-portail.org/wiki/display/ESUPNFC/ESUP-NFC-TAG-DESKTOP *
Most of all define the esup-nfc-tag instance url in src/main/resources/esupnfctag.properties esupNfcTagServerUrl = https://hostnameOrIpToEsupNFCTagServer
We make sure that the test DesfireKey is the same in the mobile app :
FF112233445566778899AABBCCDDEEFF
Connect the reader.
Configure a Phone with the campuscardapp authenticated by any way you want ; the only requirement is : the user has to be present in the esup SGC database or LDAP configured.
Configure a test room to tag and tag with the test eCard app.

Test the reading with the ESUP NFC keyboard Emulator
clone and install https://www.esup-portail.org/wiki/display/ESUPNFC/ESUP-NFC-TAG-KEYBOARD *
Sources : https://github.com/EsupPortail/esup-nfc-tag-keyboard
Configure the properties in src/main/resources/esupnfctagkeyboard.properties
port = 33333
esupNfcTagServerUrl = https://esup-nfc-tag-dev.normandie-univ.fr
noResponseMessage = -
numeroIds = keyboard-secondary-id, keyboard-csn, keyboard-eppn, keyboard-email
emulateKeyboard = true
forceCsn = false
lineFeed = true
redirect = false
redirectUrlTemplate = https://esup-sgc-dev.normandie-univ.fr/manager/{0}
prefix =
suffix =
timeBetweenSameCard = 3000
cardReadSleepTime = 1000
onErrorSleepTime = 3000
beforeNextCardSleepTime = 1500
Test the reading with the ESUP attendencies app :
https://esup-emargement-dev.normandie-univ.fr/ (soon available)
Specification : https://www.esup-portail.org/wiki/display/EMARGEMENT *
sources : https://github.com/EsupPortail/esup-emargement
* use right click and trasnlate with your Chrome favorite language
Important Note
You can test without installing the full system and use instead our instancies :
https://esup-nfc-tag-dev.normandie-univ.fr and https://esup-sgc-dev.normandie-univ.fr
Make sure you use the test user with this fields in the mobile app :
- lastname : Demo
- surname : Robert
- birthday: 1982-02-28
- LibraryId : HUHS0123453
Milestone 1.5 and 1.6
- Esup-SGC the french open source card management system with eCard comptibility
- Esup-NFC Tag readers system compatibility with the eCard
- Compatible services with esup-NFC-Tag : Library(esup nfc keaboard emulation), Culture pass (non open source app), Print (Papercut), Attendance list (Esup-Emargement)