Options avancées de carte à puce sur Mac
Réglages de configuration de carte à puce
Vous pouvez afficher et modifier des réglages et des journaux de configuration de carte à puce spécifiques sur un ordinateur Mac en utilisant la ligne de commande pour les options suivantes :
Répertorier 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 répertorier des jetons de carte à puce désactivés.
sudo security smartcards token [-l] [-e token] [-d token]
Dissocier la carte à puce.
sudo sc_auth unpair -u jappleeed
Afficher les cartes à puce disponibles.
sudo security list-smartcards
Exporter des éléments à partir d’une carte à puce.
sudo security export-smartcard
Connexion de la carte à puce.
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
Outre la ligne de commande, vous pouvez utiliser les données utiles de carte à puce pour gérer les options ci-dessous. Pour en savoir plus, consultez la rubrique Réglages des données utiles MDM Carte à puce.
Supprimer l’invite de jumelage à l’insertion de jeton.
sudo defaults write /Library/Preferences/com.apple.security.smartcard UserPairing -bool false
Limiter le jumelage de compte utilisateur à une carte à puce unique.
sudo defaults write /Library/Preferences/com.apple.security.smartcard oneCardPerUser -bool true
Désactiver l’utilisateur de carte à puce pour l’ouverture de session et les autorisations.
sudo defaults write /Library/Preferences/com.apple.security.smartcard allowSmartCard -bool false
Remarque : lors de la désactivation de allowSmartCard, les identités de certificats de cartes à puce sont toujours utilisables pour d’autres opérations, telles que la connexion et le chiffrement, et dans des apps tierces prises en charge.
Gérer le comportement de confiance des certificats de carte à puce.
sudo defaults write /Library/Preferences/com.apple.security.smartcard checkCertificateTrust -int <value>
La valeur peut être comme suit :
0 : La confiance de certificat de carte à puce n’est pas requise.
1 : La chaîne et le certificat de la carte à puce doivent être approuvés.
2 : Le certificat et la chaîne doivent être approuvés et ne doivent pas être révoqués.
3 : Le certificat et la chaîne doivent être approuvés et l’état de révocation doit être renvoyé comme étant valide.
Épinglage du certificat
Il est possible de préciser les autorités d’émission de certificats à utiliser pour l’évaluation de la confiance des certificats de carte à puce. Cette confiance, qui fonctionne en conjonction avec les réglages de confiance des certificats (1, 2 ou 3 requis), est appelée épinglage de certificat. Placez les empreintes SHA-256 des autorités de certificat (comme des valeurs de chaîne, séparées par une virgule et sans espaces) dans un tableau appelé TrustedAuthorities
. Utilisez l’exemple de fichier /private/etc/SmartcardLogin.plist ci-dessous pour vous guider. Lorsque l’épinglage du certificat est utilisé, seuls les certificats de carte à puce émis par les autorités de certificat de cette liste sont évalués comme des certificats de confiance. Notez que le tableau TrustedAuthorities
est ignoré lorsque le réglage checkCertificateTrust
est défini sur 0 (désactivé). Vérifiez que la propriété est « root » (racine) et que les autorisations sont définies sur « world read » (lisibles dans le monde entier) 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>