使用虚拟智能卡

警告

Windows Hello 企业版和 FIDO2 安全密钥是适用于 Windows 的新式双因素身份验证方法。 建议使用虚拟智能卡的客户迁移到 Windows Hello 企业版 或 FIDO2。 对于新的 Windows 安装,建议Windows Hello 企业版或 FIDO2 安全密钥。

了解虚拟智能卡的要求,以及如何使用和管理它们。

要求、限制和限制

区域 要求和详细信息
支持的受信任的平台模块 (TPM) 支持使用受受信任计算组) 设置的 TPM main规范的 1.2 或版本 2.0 (的任何 TPM 用作虚拟智能卡。 有关详细信息,请参阅 TPM 主规范
每台计算机支持的虚拟智能卡 10 张智能卡可以一次连接到计算机或设备。 这包括物理智能卡和虚拟智能卡的组合。

注意
可以创建多个虚拟智能卡;但是,创建四个以上的虚拟智能卡后,可能会开始注意到性能下降。 由于所有智能卡都显示为始终插入,如果多人共享计算机或设备,每个人都可以看到在该计算机或设备上创建的所有虚拟智能卡。 如果用户知道所有虚拟智能卡的 PIN 值,则用户也可以使用它们。
虚拟智能卡上支持的证书数 单个 TPM 虚拟智能卡可以包含 30 个具有相应私钥的不同证书。 用户可以继续在卡续订证书,直到卡上的证书总数超过 90。 证书总数与私钥总数不同的原因是,有时可以使用同一私钥进行续订,在这种情况下,不会生成新的私钥。
PIN、PIN 解锁密钥 (PUK) 和管理密钥要求 PIN 和 PUK 必须至少包含 8 个字符,可以包含数字、字母字符和特殊字符。
必须以 48 个十六进制字符的形式输入管理密钥。 它是在 CBC 链接模式下使用 ISO/IEC 9797 填充方法 2 的 3 键三重 DES。

使用 Tpmvscmgr.exe

若要为最终用户创建和删除 TPM 虚拟智能卡,Tpmvscmgr 命令行工具作为命令行工具包含在操作系统中。 可以使用 “创建 ”和 “删除” 参数来管理本地或远程计算机上的虚拟智能卡。 有关使用此工具的信息,请参阅 Tpmvscmgr

以编程方式创建和删除虚拟智能卡

也可以使用 API 创建和删除虚拟智能卡。 有关详细信息,请参阅以下类和接口:

可以使用 命名空间中的 Windows.Device.SmartCards API 生成 Microsoft Store 应用,以管理虚拟智能卡的整个生命周期。 有关如何生成应用以执行此操作的信息,请参阅 强身份验证:在企业、BYOD 和使用者环境中构建利用虚拟智能卡的应用

下表描述了可在 Microsoft Store 应用中开发的功能:

功能 物理智能卡 虚拟智能卡
查询和监视智能卡读取器
列出读取器中的可用智能卡,并检索卡名称和卡 ID
验证卡的管理密钥是否正确
使用给定卡 ID) 卡预配 (或重新格式化
通过输入旧 PIN 并指定新 PIN 来更改 PIN
使用质询/响应方法更改管理密钥、重置 PIN 或取消阻止智能卡
创建虚拟智能卡 不适用
删除虚拟智能卡 不适用
设置 PIN 策略

有关这些 Windows API 的详细信息,请参阅:

区分基于 TPM 的虚拟智能卡和物理智能卡

为了帮助用户直观地区分受信任的平台模块 (基于 TPM) 的虚拟智能卡与物理智能卡,虚拟智能卡具有不同的图标。 虚拟智能卡图标显示在登录期间,以及要求用户输入虚拟智能卡 PIN 的其他屏幕上。

基于 TPM 的虚拟智能卡在用户界面中标记为“安全设备”。

更改 PIN

可以按照以下步骤更改虚拟智能卡的 PIN:

  • 使用旧的 PIN 或密码登录
  • Ctrl+Alt+Del 并选择“更改密码
  • 选择 “登录选项”
  • 选择虚拟智能卡图标
  • 输入并确认新 PIN

解决问题

未预配 TPM

若要使基于 TPM 的虚拟智能卡正常运行,必须在计算机上提供预配的 TPM:

  • 如果在 BIOS 中禁用 TPM,或者未使用完全所有权和存储根密钥预配 TPM,则 TPM 虚拟智能卡创建失败
  • 如果在创建虚拟智能卡后初始化了 TPM,则卡将不再有效,必须重新创建它
  • 如果重新安装操作系统,以前的 TPM 虚拟智能卡不再可用,需要重新创建
  • 如果操作系统已升级,以前的 TPM 虚拟智能卡可在升级的操作系统中使用

处于锁定状态的 TPM

有时,由于用户频繁尝试不正确的 PIN,TPM 可能会进入锁定状态。 若要恢复使用 TPM 虚拟智能卡,必须使用所有者的密码重置 TPM 上的锁定或等待锁定过期。 取消阻止用户 PIN 不会重置 TPM 中的锁定。 当 TPM 处于锁定状态时,TPM 虚拟智能卡显示为被阻止。 当 TPM 由于用户输入错误的 PIN 次数过多而进入锁定状态时,可能需要使用虚拟智能卡管理工具(如 Tpmvscmgr 命令行工具)重置用户 PIN。

另请参阅

有关身份验证、机密性和数据完整性用例的信息,请参阅 虚拟智能卡概述