Options avancées de carte intelligente sur Mac
Réglages de configuration de carte intelligente
Vous pouvez consulter et modifier certains réglages et historiques de configuration de carte intelligente sur un ordinateur Mac en utilisant la ligne de commande pour les options suivantes :
Liste les jetons disponibles dans le système.
pluginkit -m -p com.apple.ctk-tokens
com.apple.CryptoTokenKit.setoken(1.0)
com.apple.CryptoTokenKit.pivtoken(1.0)
Activer, désactiver ou lister les jetons de cartes intelligentes désactivés.
sudo security smartcards token [-l] [-e token] [-d token]
Déjumeler la carte intelligente.
sudo sc_auth unpair -u jappleeed
Afficher les cartes intelligentes disponibles.
sudo security list-smartcards
Exporter des éléments d’une carte intelligente.
sudo security export-smartcard
Historique de carte intelligente.
sudo defaults write /Library/Preferences/com.apple.security.smartcard Logging -bool true
Désactiver les jetons PIV intégrés.
sudo defaults write /Library/Preferences/com.apple.security.smartcard DisabledTokens -array com.apple.CryptoTokenKit.pivtoken
En plus d’utiliser la ligne de commande, les options suivantes peuvent également être gérées à l’aide de l’entité Carte intelligente. Pour en savoir plus, consultez Réglages de l’entité de GAM Carte intelligente.
Éliminer l’invitation au jumelage lors de l’insertion du jeton.
sudo defaults write /Library/Preferences/com.apple.security.smartcard UserPairing -bool false
LImiter le jumelage de compte utilisateur à une seule carte intelligente.
sudo defaults write /Library/Preferences/com.apple.security.smartcard oneCardPerUser -bool true
Désactiver la connexion et l’autorisation pour l’utilisateur de la carte intelligente.
sudo defaults write /Library/Preferences/com.apple.security.smartcard allowSmartCard -bool false
Remarque : Après la désactivation de l’option allowSmartCard, les identités des certificats des cartes intelligentes sont toujours utilisables pour d’autres opérations telles que la signature et le chiffrement, et dans les apps tierces compatibles.
Gérer le comportement de confiance du certificat de carte intelligente.
sudo defaults write /Library/Preferences/com.apple.security.smartcard checkCertificateTrust -int <value>
La valeur peut être :
0 : La fiabilité du certificat de la carte intelligente n’est pas obligatoire.
1 : La chaîne et le certificat de la carte intelligente doivent être fiables.
2 : Le certificat et la chaîne doivent être fiables et leur statut ne doit pas être révoqué.
3 : Le certificat et la chaîne doivent être fiables et la valeur de leur statut de révocation est valide.
Épinglage de certificats
Il est possible de préciser quelles autorités de certification sont utilisées pour l’évaluation de confiance des certificats de carte intelligente. Cette confiance, qui fonctionne en conjonction avec les réglages de confiance des certificats (1, 2 ou 3 requis), est conue sous le nom d’épinglage de certificats. Placez les empreintes digitales SHA-256 des autorités de certification (sous la forme de valeurs de chaîne, séparées par des virgules et sans espace) dans un tableau nommé TrustedAuthorities
. Utilisez l’exemple de fichier /private/etc/SmartcardLogin.plist ci-dessous à titre de référence. Lorsque l’épinglage de certificats est utilisé, seuls les certificats SmartCard émis par des autorités de certification figurant dans cette liste sont considérées comme fiables. Notez que le tableau TrustedAuthorities
est ignoré lorsque le réglage checkCertificateTrust
est réglé à 0 (désactivé). Vérifiez que le propriétaire est « root » et que les autorisations sont « universelles » après la modification.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>AttributeMapping</key>
<dict>
<key>dsAttributeString</key>
<string>dsAttrTypeStandard:AltSecurityIdentities</string>
<key>fields</key>
<array>
<string>NT Principal Name</string>
</array>
<key>formatString</key>
<string>Kerberos:$1</string>
</dict>
<key>TrustedAuthorities</key>
<array>
<string>SHA256_HASH_OF_CERTDOMAIN_1,SHA256_HASH_OF_CERTDOMAIN_2</string>
</array>
</dict>
</plist>