次の方法で共有


指紋リーダーのテストの前提条件

このセクションでは、Windows Hardware Lab Kit (Windows HLK) を使用して指紋リーダーをテストする前に完了しておく必要があるタスクについて説明します。

ハードウェア要件

指紋リーダーをテストするには、以下のハードウェアが必要です。 テスト デバイスで他の機能が提供されている場合は、追加のハードウェアが必要になる場合があります。 追加のハードウェア要件が適用されるかどうかを判断するには、Windows HLK Studio でデバイスに対して表示される各テストのテストの説明を参照してください。

  • 1 台のテスト コンピューター。 テスト コンピューターは、Windows HLK の前提条件を満たしている必要があります。 詳細については、「Windows HLK の前提条件」を参照してください。

  • テストする指紋リーダー。

  • 指紋リーダーが USB ベースのデバイスの場合は、認定された USB 2.0 ハブが 1 つ。

Note

サーバーで使用する製品の認定を受けるには、テスト コンピューターが 4 つのプロセッサと 1 GB 以上の RAM をサポートしている必要があります。 これらのシステム機能は、デバイスとドライバーの再調整、D3 状態、および複数のプロセッサ グループの機能をテストするために必要です。 実際に 64 個以上のプロセッサを搭載したコンピューターでなくても、デバイスをテストすることは可能です。 また、デバイスまたはドライバーのテストに使用されるサーバー システムには、テストの前に Server Core がインストールされている必要があります。 詳細については、Windows Server のインストール オプションに関するページを参照してください。

テスト コンピューターのプールを使用してデバイスをテストする場合、プール内の少なくとも 1 台のコンピューターに 4 つのプロセッサと 1 GB 以上の RAM が搭載されている必要があります。 さらに、そのコンピューターには、テスト対象のデバイスとドライバーが含まれている必要があります。 プール内のすべてのコンピューターでドライバーが同じである限り、システムは、すべてのテスト コンピューターに対して実行するスケジュールを作成します。

ハード ディスク ドライブのテストなど、テストするドライバーが含まれないテストの場合、Windows HLK スケジューラは、デバイスとドライバーの再調整、D3 状態、および複数プロセッサ グループの機能を検証するテストを、既定のテスト コンピューターでのみ実行されるように制限します。 このコンピューターが複数のプロセッサ グループを持つように手動で構成する必要があります。 既定のコンピューターは、一覧の最初のテスト コンピューターです。 テスト担当者は、一覧の最初のテスト コンピューターがハードウェアの最小要件を満たしていることを確認する必要があります。

Note

(WHCP ポリシーとプロセスに関するドキュメントで定義されている) 準仮想化ドライバーを除き、物理デバイスと関連するドライバーでサーバーの認定または署名をテストするときは、いかなる形式の仮想化も使用できません。 いずれの仮想化製品でも、複数のプロセッサ グループ、デバイス電源管理、デバイス PCI 機能、およびその他のテストに関連するテストに成功するために必要となる基本機能はサポートされていません。

Note

  複数プロセッサ グループの設定には、Windows Server 2008 R2 以降の認定用デバイス ドライバーの Hardware Lab Kit テストに使用するプロセッサ グループのサイズの値を設定する必要があります。 この場合、管理者特権のコマンド プロンプト ウィンドウで、「/set」オプションを使用して bcdedit を実行します。

グループ設定を追加して再起動するためのコマンドは次のとおりです。

bcdedit.exe /set groupsize 2
bcdedit.exe /set groupaware on
shutdown.exe -r -t 0 -f

グループ設定を削除して再起動するためのコマンドは次のとおりです。

bcdedit.exe /deletevalue groupsize
bcdedit.exe /deletevalue groupaware
shutdown.exe -r -t 0 -f

Note

コードの整合性設定

まずサーバー マネージャーを使用して Windows Server 2016 の仮想化ベースのセキュリティ機能 (VBS) を有効にする必要があります。

その後、次のレジストリ キーを作成して設定する必要があります。

HKLM\System\CurrentControlSet\Control\DeviceGuard
HypervisorEnforcedCodeIntegrity:REG_DWORD
0 or 1 (disabled, enabled)

ソフトウェア要件

指紋リーダーをテストするには、以下のソフトウェアが必要です。

  • テスト デバイス用ドライバー。

  • 最新の Windows HLK フィルターまたは更新プログラム。

テスト コンピューターの構成

テスト デバイス用にテスト コンピューターを構成するには、こちらの手順に従います。

  1. 適切な Windows オペレーティング システムをテスト コンピューターにインストールしてから、テスト ネットワーク (Windows HLK Studio と Windows HLK Controller が接続されたネットワーク) 用のコンピューターを構成します。

  2. テスト デバイスが USB ポートを介して接続されている場合は、USB 2.0 コントローラーを高速 USB 2.0 ハブに接続し、テスト デバイスを高速 USB 2.0 ハブのダウンストリーム ポートに接続します。

    Note

    USB テスト デバイスを USB 2.0 コントローラーのルート ハブに直接接続しないでください。

  3. 指紋リーダーをテスト コンピューターに接続します。

  4. 製造元から提供されているデバイス ドライバーをテスト コンピューターにインストールする必要がある場合は、このときに行います。

  5. テスト コンピューターで指紋リーダーが正しく機能していることを確認します。

  6. テスト コンピューターに Windows HLK クライアント アプリケーションをインストールします。

  7. Windows HLK Studio を使用してコンピューター プールを作成し、テスト コンピューターをそのプールに移動します。

  8. テスト ディレクトリ [SYSTEMDRIVE]\FingerprintReaderTest を作成します。

  9. センサー、ストレージ、エンジン アダプターの [SYSTEMDRIVE]\Windows\System32\WinBioPlugins からアダプター DLL をコピーします。

  10. 次のテンプレートを使用して、センサー、ストレージ、エンジン アダプターの構成ファイルを作成します。

  11. sensorAdapterLibengineAdapterLibstorageAdapterLib の構成タグを編集し、以前コピーした正しいアダプター DLL をポイントするようにします。

  12. supportedModessupportedPurposes の構成タグを、デバイスの機能に合わせて編集します。

  13. runOptional 属性の既定値は false です。 この属性を true に変更すると、追加のテストが実行されます。

  14. ストレージ テストの場合、デバイスにオンボード ストレージがある場合は deviceRequired 属性を true に変更します。

テストを開始する前に、テスト コンピューターが準備完了状態であることを確認します。 テストを実行する前にパラメーターを設定する必要がある場合は、そのテストのダイアログ ボックスが表示されます。 詳細については、個々のテスト トピックを確認してください。

一部の Windows HLK テストでは、ユーザーの介入が必要です。 申請のためにテストを実行するときは、手動テストとは別のブロックで自動テストを実行することをお勧めします。 これにより、自動テストの完了が手動テストによって中断されるのを防ぎます。

指紋リーダー ドライバーまたはアダプター テストを実行する前に、Windows 生体認証サービスを無効にします。 指紋リーダー HLK テストの実行中に生体認証サービスが実行されると、両者の間に競合が発生する可能性があり、テスト結果が正確でなくなります。

テスト構成ファイルの書き方

指紋リーダー アダプターのテストを実行する前に、センサー、ストレージ、エンジン アダプター用の XML 構成ファイルを作成する必要があります。 これらのファイルの名前は、SensorTestConfig.XML、EngineTestConfig.XML、および StorageTestConfig.XML である必要があります。 以下のテンプレートを出発点として使用し、特定のデバイス用に変更してください。

センサー アダプターの構成ファイル

<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" logType="WTT">
  <testSuites>
    <testSuite deviceRequired="true" id="SensorAdapterTestSuite">
      <library>sensortest.dll</library>
      <description>Sensor Adapter Test Suite</description>
    </testSuite>
  </testSuites>
  <deviceInfo>
    <sensorAdapterLib>winbiosensoradapter.dll</sensorAdapterLib>
    <engineAdapterLib>engineadapter.dll</engineAdapterLib>
    <storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib>
    <indicatorSupported>0</indicatorSupported>
    <supportedModes>
      <supportedMode>0x01</supportedMode>
      <supportedMode>0x02</supportedMode>
    </supportedModes>
    <supportedPurposes>
      <supportedPurpose>0x01</supportedPurpose>
      <supportedPurpose>0x02</supportedPurpose>
      <supportedPurpose>0x04</supportedPurpose>
      <supportedPurpose>0x08</supportedPurpose>
      <supportedPurpose>0x10</supportedPurpose>
      <supportedPurpose>0x80</supportedPurpose>
    </supportedPurposes>
  </deviceInfo>
</bioTestConfiguration>

エンジン アダプターの構成ファイル

<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" logType="WTT">
  <testSuites>
    <testSuite deviceRequired="true" id="EngineAdapterTestSuite">
      <library>enginetest.dll</library>
      <description>Engine Adapter Test Suite</description>
    </testSuite>
  </testSuites>
  <deviceInfo>
    <sensorAdapterLib>winbiosensoradapter.dll</sensorAdapterLib> 
    <engineAdapterLib>engineadapter.dll</engineAdapterLib> 
    <storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib> 
    <indicatorSupported>0</indicatorSupported>
    <engineOnDevice>FALSE</engineOnDevice>
    <supportedModes>
      <supportedMode>0x01</supportedMode>
      <supportedMode>0x02</supportedMode>
    </supportedModes>
    <supportedPurposes>
      <supportedPurpose>0x01</supportedPurpose>
      <supportedPurpose>0x02</supportedPurpose>
      <supportedPurpose>0x04</supportedPurpose>
      <supportedPurpose>0x08</supportedPurpose>
      <supportedPurpose>0x10</supportedPurpose>
      <supportedPurpose>0x80</supportedPurpose>
    </supportedPurposes>
  </deviceInfo>
</bioTestConfiguration>

ストレージ アダプターの構成ファイル

<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" logType="WTT">
  <testSuites>
    <testSuite deviceRequired="false" id="StorageAdapter">
      <library>storagetest.dll</library>
      <description>Storage Adapter Test Suite</description>
    </testSuite>
  </testSuites>
  <deviceInfo>
    <sensorAdapterLib>winbiosensoradapter.dll</sensorAdapterLib>
    <engineAdapterLib>engineadapter.dll</engineAdapterLib>
    <storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib>
    <indicatorSupported>0</indicatorSupported>
    <storageOnDevice>FALSE</storageOnDevice>
    <supportedModes>
      <supportedMode>0x01</supportedMode>
      <supportedMode>0x02</supportedMode>
    </supportedModes>
    <supportedPurposes>
      <supportedPurpose>0x01</supportedPurpose>
      <supportedPurpose>0x02</supportedPurpose>
      <supportedPurpose>0x04</supportedPurpose>
      <supportedPurpose>0x08</supportedPurpose>
      <supportedPurpose>0x10</supportedPurpose>
      <supportedPurpose>0x80</supportedPurpose>
    </supportedPurposes>
  </deviceInfo>
</bioTestConfiguration>

追加の構成タグ

構成ファイルの "デバイス情報" セクションには、次の 3 つの追加タグがあります。

<deviceInfo>

    <badSwipeDetectionPoint> VALUE </badSwipeDetectionPoint>
    <privateConnectionSensorToEngine>BOOLEAN</privateConnectionSensorToEngine>
    <privateConnectionEngineToStorage>BOOLEAN</privateConnectionEngineToStorage>

</deviceInfo>

badSwipeDetectionPoint

  • SensorFinishCapture

  • EngineAcceptData

  • EngineProcessData

Note

1 つのテスト構成ファイルには、最大 1 つの badSwipeDetectionPoint タグを指定できます。

privateConnectionSensorToEngine

  • TRUE の場合、センサーとエンジン コンポーネントとの間に WinBio フレームワークで管理されていない内部接続があることを示します。

  • FALSE の場合、センサーとエンジン間の接続には、標準の WinBio アダプター インターフェイスが使用されます。

privateConnectionEngineToStorage

  • TRUE の場合、エンジンとストレージ コンポーネントとの間に WinBio フレームワークで管理されていない内部接続があることを示します。

  • FALSE の場合、エンジンとストレージ間の接続には、標準の WinBio アダプター インターフェイスが使用されます。

Note

複合デバイスの場合、privateConnectionSensorToEngine と privateConnectionEngineToStorage の両方を設定することが可能です。

engineOnDevice

  • TRUE の場合、指紋センサーのハードウェアでエンジン機能がサポートされていることを表します。 これは通常、そのセンサーが高度なセンサーであることを意味します。

  • FALSE の場合、指紋センサーのソフトウェアでエンジン機能がサポートされていることを表します。 これは通常、そのセンサーが基本的なセンサーであることを意味します。

storageOnDevice

  • TRUE の場合、指紋センサーのハードウェアでテンプレート保存がサポートされていることを表します。 これは通常、そのセンサーが高度なセンサーであることを意味します。

  • FALSE の場合、指紋センサーのハードウェアではテンプレート保存がサポートされていないことを表します。 テンプレートはディスクに格納されます。 これは通常、そのセンサーが基本的なセンサーであることを意味します。