Microsoft 对生物特征传感器提出了新要求,以符合 Windows Hello 质量准则。 若要获得与 Windows Hello 互操作的批准,必须设置新的手动评审过程。 对于通过 Windows 合作伙伴中心 https://partner.microsoft.com/dashboard/home 获得的特定签名(只能通过接受本文档中的过程获得),将通过 OS 检查实施该过程。 在 2017 年 6 月 1 日之前由 WHQL 创建和签名的驱动程序享有特权。 在此日期之后未获得此签名的新驱动程序和更新驱动程序,将无法在实施日期之后与 Window 10 版本 1703 或更高版本中的 Windows Hello 协同工作。
驱动程序始终需要经过手动批准才能获得 Windows Hello 签名。 对已批准驱动程序的更新可以参考以前的提交,以加快审批速度。 如果驱动程序适用于新传感器,或者匹配引擎发生了影响 FAR、FRR 或演示攻击检测的更改,驱动程序必须接受新的评审。
生物特征签名的实施日期为 2017 年 6 月 1 日,在此日期之后,将不会加载不包含生物特征签名的驱动程序,并且不再与 Windows Hello 协同工作。
步骤 1:创建生物特征驱动程序
按照此处的说明创建生物特征驱动程序:Windows 生物特征框架
步骤 2:测试传感器并进行自我验证
对传感器和驱动程序进行自我验证,确保它们符合 Microsoft 的生物特征要求,并在指纹安全评审模板中报告调查结果。 有关要求和模板的文档可以在 Connect 上的指纹合作伙伴包中找到。 如果无权访问 Connect,请联系 Microsoft 代表。
步骤 3:修改驱动程序配置 xml 文件
提交驱动程序时,Windows 10 版本 1703 指纹 HLK 测试将检查以确保 <vendorCompliance> 和 <securityReview> 标记包含在以下字段中:
bugId:先前 HLK 提交的 ID 号,该提交包含先前批准的安全评审信息;如果提交正在接受全新的安全评审,则为 0。
updateExistingSubmission:如果提交是对已接受安全评审的先前提交的更新,则为 true;否则为 false。
示例
<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" priority="3" logType="WTT">
<vendorCompliance>
<securityReview bugId="12345678" updateExistingSubmission="true"/>
</vendorCompliance>
<testSuites>
<testSuite deviceRequired="false" id="StorageAdapter">
<library>storagetest.dll</library>
<description>storage Adapter Test Suite</description>
</testSuite>
</testSuites>
<deviceInfo>
<sensorAdapterLib>WinbioSensorAdapter.dll</sensorAdapterLib>
<engineAdapterLib>vcsWBFEngineAdapter.dll</engineAdapterLib>
<storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib>
<indicatorSupported>0</indicatorSupported>
<supportedModes>
<supportedMode>0x01</supportedMode>
</supportedModes>
<supportedPurposes>
<supportedPurpose>0x01</supportedPurpose>
<supportedPurpose>0x02</supportedPurpose>
<supportedPurpose>0x04</supportedPurpose>
</supportedPurposes>
</deviceInfo>
</bioTestConfiguration>步骤 4:修改驱动程序配置 inf
需要将生物特征驱动程序包提交到新的 DevCenter 门户,以获取所需的 Windows Hello 签名并上传到 WU。 包需要在驱动程序 INF 文件中包含特定属性来正确指定适配器 dll,以获取数字签名。 以下示例演示了用于获取适配器二进制文件及其相关库的生物特征签名的格式设置。
例如,如果驱动程序包包含分别命名为 sensor.dll、engine.dll 和 storage.dll 的传感器、引擎和存储适配器,以及一个加载的 stringparser.dll,那么要获取每个 dll 的生物特征签名,INF 文件必须包含以下组件:
[SignatureAttributes]
sensor.dll = SignatureAttributes.WindowsHello
engine.dll = SignatureAttributes.WindowsHello
storage.dll = SignatureAttributes.WindowsHello
stringparser.dll = SignatureAttributes.WindowsHello[SignatureAttributes.WindowsHello]
WindowsHello = true这一步对于确保驱动程序获得适当的认证最为重要。 如果要在提交到 DevCenter 时获得生物特征签名,就必须以这种方式标记和包含所有第三方生物特征适配器文件和由这些适配器加载的任何第三方 dll。
步骤 5:运行 HLK 测试套件
HLK 测试将确保已在步骤 3 和 4 中进行了上述修改,如果配置信息不存在,这些修改将失败。 在 HLK Studio 中打包最终 HLK 时,请将 bug 中提交的安全评审模板作为补充文件包含在内。
步骤 6:提交驱动程序包和 HLK 日志
将打包的 HLK 文件提交到 DevCenter 进行评审。 Microsoft 的功能团队将在提交进入人工评审流程时收到通知。 团队将评审 HLK 包中提交的模板,以确保自我验证的信息符合 Microsoft 的生物特征要求。
步骤 7:等待 Microsoft 批准和签名
Microsoft 将批准提交,前提是它满足所有生物识别要求,获取生物识别签名不是驱动程序将使用Windows Hello的认证。 例如,可以在检查签名的 inf 配置文件中排除某个文件。 如果在 OS 实施签名时加载此文件,加载将失败,驱动程序不会与 Windows Hello 协同工作。 已签名的驱动程序应由 IHV 和 OEM 测试,以确保它可以在集体系统中工作。
步骤 8:更新现有驱动程序
如果需要对以前签名的驱动程序进行更新,请按照步骤 3 中的说明,在驱动程序配置 xml 中为更新的驱动程序填写 bugId 和 updateExistingSubmission 字段。 如果正在对享有特权的驱动程序进行更新,应使用相同的步骤。 bugId 字段应设置为享有特权的驱动程序的提交 ID,updateExistingSubmission 字段应设置为 true。 驱动程序配置 xml 应包含在提交的驱动程序包中。
摘自微软官网