Opciones avanzadas de tarjeta inteligente en el Mac
Ajustes de configuración de tarjeta inteligente
Puedes usar las siguientes opciones en la línea de comandos para ver y editar registros y ajustes específicos de configuración de tarjetas inteligentes en un ordenador Mac:
Enumerar identificadores disponibles en el sistema.
pluginkit -m -p com.apple.ctk-tokens
com.apple.CryptoTokenKit.setoken(1.0)
com.apple.CryptoTokenKit.pivtoken(1.0)
Activar, desactivar o enumerar identificadores desactivados de tarjetas inteligentes.
sudo security smartcards token [-l] [-e token] [-d token]
Desenlazar la tarjeta inteligente.
sudo sc_auth unpair -u jappleeed
Mostrar tarjetas inteligentes disponibles.
sudo security list-smartcards
Exportar ítems de una tarjeta inteligente.
sudo security export-smartcard
Activar registros de tarjetas inteligentes.
sudo defaults write /Library/Preferences/com.apple.security.smartcard Logging -bool true
Desactivar identificadores PIV integrados.
sudo defaults write /Library/Preferences/com.apple.security.smartcard DisabledTokens -array com.apple.CryptoTokenKit.pivtoken
Además de usar la línea de comandos, las siguientes opciones también se pueden gestionar con la carga útil “Tarjeta inteligente”. Para obtener más información, consulta los Ajustes de carga de MDM “Tarjeta inteligente”.
Suprimir solicitud para enlazar al insertar identificador.
sudo defaults write /Library/Preferences/com.apple.security.smartcard UserPairing -bool false
Limitar enlace de cuenta de usuario a una única tarjeta inteligente.
sudo defaults write /Library/Preferences/com.apple.security.smartcard oneCardPerUser -bool true
Desactivar a usuario de tarjeta inteligente a efectos de inicio de sesión y autorización.
sudo defaults write /Library/Preferences/com.apple.security.smartcard allowSmartCard -bool false
Nota: Al desactivar allowSmartCard, las identidades de los certificados de tarjeta inteligente se pueden seguir utilizando para otras operaciones, como las de firma y encriptación, y en apps de terceros compatibles.
Gestionar la confianza en certificados de tarjetas inteligentes.
sudo defaults write /Library/Preferences/com.apple.security.smartcard checkCertificateTrust -int <value>
El valor puede ser uno de los siguientes:
0: No se requiere confiar en el certificado de tarjeta inteligente.
1: Se debe confiar en el certificado y la cadena de la tarjeta inteligente.
2: Se debe confiar en el certificado y la cadena, y no se debe recibir un estado de revocado.
3: Se debe confiar en el certificado y la cadena, y el estado de revocación devuelto es válido.
Fijación de certificados
Es posible especificar qué autoridades de emisión de certificados se utilizan para evaluar la confianza de los certificados de tarjeta inteligente. Esta confianza, que funciona en conjunción con los ajustes de confianza de los certificados (se requieren los valores 1, 2 o 3), recibe el nombre de fijación de certificados. Coloca huellas digitales SHA-256 de las autoridades certificadoras (como valores de cadena, delimitados por comas y sin espacios) en una matriz llamada TrustedAuthorities
. Guíate por el siguiente archivo /private/etc/SmartcardLogin.plist de ejemplo. Cuando se utiliza la fijación de certificados, solo se consideran de confianza los certificados SmartCard emitidos por las autoridades certificadoras de esta lista. Ten en cuenta que la matriz TrustedAuthorities
no se tiene en cuenta cuando el ajuste checkCertificateTrust
está configurado como 0 (desactivado). Verifica que la propiedad sea “raíz” y que los permisos estén configurados para ser “legibles por Mundo” después de editarlo.
<?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>