Apple/macOS

Kohteesta DigiWiki
< Apple
Versio hetkellä 8. marraskuuta 2021 kello 11.22 – tehnyt TUOMALA JUHA 10000350X (keskustelu | muokkaukset)
Siirry navigaatioon Siirry hakuun

Applen macOS käyttöjärjestelmästä on useita eri versioita, viimeisin niistä on Monterey.

macOS käyttää Keychain Access-ohjelmaa varmennevarastona jossa aiemmin Tokend-rajapintaa käytettäessä näkyivät myös henkilökortin varmenteet. Uudemmat versiot DigiSign Client ohjelmasta käyttävät CryptoTokenKit-rajapintaa (CTK) ja varmenteet eivät enää näy Keychain Access ohjelmassa. KeyChain ongelmasta seuraa, ettei mm Applen oma Safari-selain tai sähköpostiohjelma näe käyttäjän kortilla olevia varmenteita. Ongelmaa pystyi aiemmin kiertämään asentamalla vapaan lisenssin OpenSC-väliohjelmiston, mutta se ei enää toimi 2017 alusta myönnettyjen, eli G3 sukupolven korttien kanssa koska sieltä puuttuu uuden kortin ajuri.

Etäyhteyttä käytettäessä (VNC ikkunointi, ssh pääteyhteys) macOS ei rajoita paikallisten varmennekorttien käsittelyä paikallisiin istuntoihin kuten Windows tekee tietoturvasyistä.

Historia

Mac OS X Lion 10.7 -10.12[1] henkilökorttien tuki ollut tuettuna Tokend-rajapinnalla. Siitä tehtiin avointa lähdekoodia ja se siirrettiin macosforge- ja github kehitysportaaleihin. Kehittäjät ilmeisesti olleet OpenSC-projektin aktiiveja.

Mac OS X Sierra 10.12 - High Sierra 10.13 CryptoTokenKit-rajapinnan (CTK) käyttöönotto.

macOS Mojave Keyring toimii, käyttäjä-varmenne-pairing toimii.

macOS Catalina 10.15.0 Tokend poistettu, ainoastaan CryptoTokenKit tuettu.

macOS Big Sur 11.2.2 samat CTK-ongelmat jatkuvat. sc_auth komento, keyring eivät toimi oletetusti.

macOS Monterey 12.0.1 DigiSign 4.2.0b näyttäisi toimivan Firefoxin kanssa, CTK- ja Keyring- ja Safari ongelmat jatkuvat.

Asennus

Henkilökortin käyttö vaatii väliohjelmiston asennuksen. Koska nykyisellään Digiviraston ohjelmisto ei toimi, ainoaksi vaihtoehdoksi jää asentaa avoimen lähdekoodin OpenSC.

Digisign Client

Digiviraston webistä on poistettu siellä aiemmin ollut ei toimi Safari 12 version kanssa varoitus (2021-11-07), mutta siitä huolimatta Safari ei tunnu toimivan kuten ennenkään.

Firefoxin turvaväline-asetuksiin ladattava PKCS11 kirjaston polku on:

/Library/mPolluxDigiSign/libcryptoki.dylib

OpenSC

Osalle tarvittavia ohjelmia ei ole saatavilla Applen .dmg levykuvaa ja/tai natiivia .pkg pakettia. Asentamalla ns Home Brew pakettienhallintaohjelmiston, ohjelmien asennuksen ja päivittäminen helpottuu huomattavasti. Sen asennusohjeet löytyvät omilta sivuiltaan.

Komentotulkki-ikkunassa:

% sudo brew install opensc


Asennuksen jälkeen voi kokeilla näkeekö OpenSC kortinlukijan:

% opensc-tool -l
# Detected readers (pcsc)
Nr.  Card  Features  Name
0    No              Gemalto PC Twin Reader

Ja toimivatko varmenteiden listaaminen:

% pkcs15-tool -c 
Using reader with a card: Gemalto PC Twin Reader
X.509 Certificate [todentamis- ja salausvarmenne]
       Object Flags   : [0x00]
       Authority      : no
       Path           : 3f004331
       ID             : 45
       Access Rules   : read:<always>;
       Encoded serial : 02 04 3BC409C1

X.509 Certificate [allekirjoitusvarmenne]
       Object Flags   : [0x00]
. . .


Ongelmanratkaisut

  • Finder -> Applications -> Utilities -> System Information.app listaa järjestelmän tietoja.
    • Hardware -> Card Reader osiossa näkyy älykortinlukijat.
    • Software -> SmartCards osiossa näkyy ajurien ja prosessien tietoja (Tokend/CryptoTokenKit). Samat tiedot näkyvät komennolla:
% system_profiler SPSmartCardsDataType
  • CryptoTokenKit palvelun tila:
% sudo launchctl print system/com.apple.ctkd | grep state
       state = running
% sudo defaults write /Library/Preferences/com.apple.security.smartcard Legacy -bool true
  • Safari ei toimi henkilökortin kanssa Digiviraston sivuilla myönnetty ongelma. Poistamalla Digisign Client ja asentamalla OpenSC ongelma korjaantuu.
  • SmartCard pairing failed Cannot pair SmartCard with the current user. The operation couldn't be completed. (OSStatus error -67808 - RSA signature verification failed, no match). Korjaus ongelmaan on poistaa Digiviraston Digisign Client ohjelmapaketti, asentaa OpenSC ja uudelleenkäynnistää kone. Sen jälkeen käyttäjätilin ja varmenteen paritus onnistuu ja jopa Safari-selain toimii tunnistusvarmenteella.
    Virhe 67808: Varmenteen tarkistus epäonnistuu.

Katso myös

Aiheesta muualla

Lähteet