在 Mac 上使用智能卡
在 Mac 电脑上使用智能卡的默认方法是将智能卡与本地用户账户配对;用户将其智能卡插入连接到电脑的读卡器时,会自动实施此方法。用户会收到将智能卡与其账户“配对”的提示,并需要管理员访问许可以执行此任务(因为配对信息储存在用户的本地目录账户中)。此方法称为本地账户配对。如果用户收到提示时不配对卡片,仍可使用卡片访问网站,但无法使用智能卡登录其用户账户。智能卡还可配合目录服务使用。若要将智能卡用于登录,它必须已配对或者配置为配合目录服务使用。
本地账户配对
以下步骤描述了本地账户配对过程:
插入包括认证和加密身份的 PIV 智能卡或硬件令牌。
在通知对话框中选择“配对”。
提供管理员账户凭证(用户名/密码)。
提供已插入智能卡的 4-6 位个人识别码 (PIN)。
退出登录,然后使用智能卡和 PIN 重新登录。
本地账户配对还可配合命令行和现有账户使用。有关更多信息,请参阅配置 Mac 以使用仅智能卡认证。
与 Active Directory 的属性映射
智能卡可使用属性映射针对 Active Directory 进行认证。此方法需要有 Active Directory 绑定系统,并在文件 /private/etc/SmartcardLogin.plist 中设置适当的匹配栏。此文件必须有全局可读许可才可正常工作。PIV 认证证书中的以下栏可用于将属性映射到目录账户中的对应值:
通用名称
RFC 822 名称(电子邮件地址)
NT 主体名称
组织
OrganizationalUnit:1
OrganizationalUnit:2
OrganizationalUnit:3
国家/地区
多个栏还可以串联来生成目录中的匹配值。
Mac 必须以适当的属性映射配置并关闭本地配对用户界面,用户才能充分利用此功能。用户必须具有本地管理员许可才能完成此任务。
若要关闭本地配对对话框,请打开“终端” App,然后键入:
sudo defaults write /Library/Preferences/com.apple.security.smartcard UserPairing -bool NO
用户随后可在收到提示时输入其密码。
一旦 Mac 配置完成,用户只需插入智能卡或令牌即可创建新用户账户。系统会提示用户输入 PIN 并创建唯一的钥匙串密码,该密码由加密密钥封装到智能卡中。账户可配置为网络用户账户或移动用户账户。
【注】“/private/etc/SmartcardLogin.plist”文件的存在优先级高于配对的本地账户。
带有属性映射的网络用户账户示例
以下为示例 SmartcardLogin.plist 文件,其中映射会关联 PIV 认证证书上的“通用名称”和“RFC 822 名称”,以匹配 Active Directory 中的 longName
属性:
<?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>fields</key>
<array>
<string>Common Name</string>
<string>RFC 822 Name</string>
</array>
<key>formatString</key>
<string>$1</string>
<key>dsAttributeString</key>
<string>dsAttrTypeNative:longName</string>
</dict>
</dict>
</plist>
带有属性映射的移动用户账户示例
绑定到 Active Directory 时,选择“登录时创建移动账户”偏好设置以允许移动账户离线登录。此移动用户功能由 Kerberos 属性映射支持,且在 Smartcardlogin.plist 文件中已配置。此配置还在 Mac 无法始终连接到目录服务器时非常有用。但是,初始账户设置需要设备绑定和目录服务器访问许可。
【注】如果使用移动账户,首次创建账户后,初始登录时必须使用账户的关联密码。此过程可确保获取安全令牌,以便进一步登录时可以解锁文件保险箱。在基于密码的初始登录之后,可使用仅智能卡认证。
<?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>fields</key>
<array>
<string>NT Principal Name</string>
</array>
<key>formatString</key>
<string>Kerberos:$1</string>
<key>dsAttributeString</key>
<string>dsAttrTypeStandard:AltSecurityIdentities</string>
</dict>
</dict>
</plist>
移除令牌时启用屏幕保护程序
屏幕保护程序可配置为在用户移除其令牌时自动启动。此选项只在智能卡配对后出现。完成此操作主要有两种方式:
在 Mac 上的“隐私与安全性”设置中,使用“高级”按钮并选择“当登录令牌被移除时打开屏幕保护程序”。确保已配置屏幕保护程序设置,然后选择“进入睡眠或开始屏幕保护程序立即要求输入密码”。
在移动设备管理 (MDM) 解决方案中,使用
tokenRemovalAction
键。