Caution |
---|
This IA is unsupported and not keeping up with the identity agent currently being deployed |
The latest, support IAs can be found here: https://digital.nhs.uk/services/registration-authorities-and-smartcards/care-identity-service/news-and-service-updates/oberthur-smartcard-updates |
you will need python3, pip, curl, pcscd and Git if not already installed on your machine
sudo apt install python3-pip curl pcscd python3-pykcs11
add the NHSbuntu packagecloud repo and install driver packages for smart card readers on Linux
curl -s https://packagecloud.io/install/repositories/nhsbuntu/nhs-smartcards/script.deb.sh | sudo bash
NOTE: if you are on a version of Ubuntu other than 16.04/xenial (or an Ubuntu derivative like mint) then you need to ensure that the distro codename is added correctly in etc/apt/sources.list.d/nhsbuntu-smartcards.list (should point to 'ubuntu' and 'xenial main')
sudo apt install libclassicclient libssl0.9.8 ifdokccid
git clone
this repo then cd
into the cloned directory
python -i authenticator.py
>>> auth = authenticator()
>>> response = auth.authenticate("1234")
should respond with XML containing a valid ticket for NHS Spine SSO
- Series 6 and 8 Smartcards (possibly 4 & 5 - not tested)
- Omnikey 3121 and Gemalto PC Twin card readers
- Basic Spine authentication
- Any card management functions
- Session persistence
- Card expiry and passcode notifications