キーボード フィルター

キーボード フィルターを使用すると、望ましくないキーの押下やキーの組み合わせを抑制できます。 通常、顧客は Ctrl +Alt + Del や Ctrl + Shift + Tab など、特定の Microsoft Windows キーの組み合わせを使用し、画面をロックしたりタスク マネージャーを使用して実行中のアプリケーションを終了するなどして、デバイスの操作を変更できます。 この動作は、特殊な用途専用のデバイスでは望ましくない場合があります。

キーボードフィルター機能は、物理キーボード、Windows スクリーン キーボード、およびタッチ キーボードで動作します。 ある言語から別の言語に切り替えると、キーボード レイアウト上の抑制されたキーの場所が変更される可能性があります。 キーボード フィルターは、これらの動的レイアウトの変更を検出し、キーを正しく抑制し続けます。

Note

リモート デスクトップ セッションではキーボード フィルターがサポートされていません。

要件

キーボード フィルターは、以下に対して有効にすることができます。

  • Windows 10 Enterprise
  • Windows 10 IoT Enterprise
  • Windows 10 Education
  • Windows 11 Enterprise
  • Windows 11 IoT Enterprise
  • Windows 11 Education

用語

  • オンにする、有効にする: デバイスで設定を使用できるようにし、必要に応じてその設定を対象デバイスに適用します。 通常、ユーザー インターフェイスまたはコントロール パネルでは "オンにする" が使用され、コマンド ラインでは "有効にする" が使用されます。

  • 構成する: 設定またはサブ設定をカスタマイズすること。

  • 埋め込みキーボード フィルター: この機能は Windows 10 バージョン 1511 では埋め込みキーボード フィルターと呼ばれます。

  • キーボード フィルター: この機能は Windows 10 バージョン 1607 以降ではキーボード フィルターと呼ばれます。

キーボード フィルターを有効にする

既定では、キーボード フィルターはオンになっていません。 次の手順に従って、デバイスのキーボード フィルターをオンまたはオフにすることができます。

キーボード フィルターをオンにするには、デバイスを再起動する必要があります。 再起動後に、キーボード フィルターが自動的に有効になります。

コントロール パネルを使用してキーボード フィルターを有効にする

  1. Windows 検索バーで、「Windows の機能をオンまたはオフにする」と入力し、Enter キーを押すか、[Windows の機能を有効化または無効化] をタップまたは選択して、[Windows の機能] ウィンドウを開きます。
  2. [Windows の機能] ウィンドウで、[デバイスのロックダウン] ノードを展開し、[キーボード フィルター]のチェックボックスをオン (にして有効) にするか、オフ (にして無効) にします。
  3. [OK] を選択します。 [Windows の機能] ウィンドウには、Windows によって必要なファイルが検索されていることが示され、進行状況バーが表示されます。 見つかった場合、Windows によって変更が適用されていることがウィンドウに示されます。 完了すると、要求された変更が完了したとウィンドウに示されます。
  4. デバイスを再起動して、変更を適用します。

無人セットアップを使用したキーボードの構成

  1. Microsoft-Windows-Embedded-KeyboardFilterService コンポーネントの無人設定を構成し、設計またはイメージ作成の段階でイメージにキーボード フィルター機能を追加できます。
  2. 無人セットアップ応答ファイルを手動で作成するか、Windows システム イメージ マネージャー (Windows SIM) を使用して、応答ファイルに適切な設定を追加できます。 キーボード フィルターの設定と XML 例の詳細は、「Microsoft-Windows-Embedded-KeyboardFilterService」 の設定を参照してください。

Windows 構成デザイナーを使用してキーボード フィルターをオンにし、構成する

キーボード フィルターの設定は Windows プロビジョニング設定としても使用できるため、イメージの展開時または実行時に適用されるように設定を構成できます。 Windows 構成デザイナーを使用してプロビジョニング パッケージを作成し、イメージの展開時または実行時にプロビジョニング パッケージを適用することで、1 つまたはすべてのキーボード フィルター設定を設定できます。

  1. プロビジョニング パッケージの作成」の手順に従って、Windows 構成デザイナーでプロビジョニング パッケージを作成し、[高度なプロビジョニング] オプションを選択します。

    Note

    [表示および構成する設定の選択] ウィンドウで、[すべての Windows デスクトップ エディションに共通] を選択します。

  2. [使用可能なカスタマイズ] ページで、[ランタイム設定]>[SMISettings] を選択し、キーボード フィルター設定に必要な値を設定します。

  3. 設定の構成とプロビジョニング パッケージの構築が完了したら、イメージの展開時または実行時にパッケージを適用できます。 詳細については、「プロビジョニング パッケージを適用する」を参照してください。

この例では、install.wim という Windows イメージを使用しますが、同じ手順を使用してプロビジョニング パッケージを適用できます。 DISM の詳細については、展開イメージのサービスと管理に関するページをご覧ください。

DISM を使用してキーボード フィルターを有効にし、構成する

  1. 管理者特権でコマンド プロンプトを開きます。

  2. 次のコマンドを使用して、機能を有効にします。

    Dism /online /Enable-Feature /FeatureName:Client-KeyboardFilter
    
  3. スクリプトが完了したら、デバイスを再起動して変更を適用します。

キーボード フィルター機能

キーボード フィルターには、次の機能があります。

  • ハードウェア キーボード、標準 Windows スクリーン キーボード、およびタッチキーボード (TabTip.exe) のサポート。

  • 複数のキーボードから取得された場合でも、キーの組み合わせを抑制。

    たとえば、ユーザーがハードウェア キーボードで Ctrl キーと Alt キーを押し、ソフトウェア キーボードで Del キーを押すと同時に、キーボード フィルターが Ctrl + Alt + Delete 機能を検出して非表示にできます。

  • テンキーや、メディア プレーヤーやブラウザーの機能にアクセスするためのキーに対応。

  • ロックダウンされたユーザー セッションのブレークアウトにキーを構成して、ようこそ画面に戻る。

  • 動的なレイアウトの変更を自動的に処理。

  • 管理者アカウントに対して有効または無効にする。

  • コンピューターの簡単操作機能を強制的に無効化。

  • は、x86 および x64 アーキテクチャのサポート。

キーボード スキャン コードとレイアウト

物理キーボードでキーが押されると、キーボードからキーボード ドライバーにスキャン コードが送信されます。 その後、ドライバーからスキャン コードが OS に送信され、OS では現在アクティブなレイアウトに基づいてスキャン コードが仮想キーに変換されます。 レイアウトでは、物理キーボードのキーのマッピングが定義されており、さまざまなバリエーションがあります。 キーボードのキーは、押されたときに常に同じスキャン コードを送信します。ただし、このスキャン コードは、さまざまなレイアウトで異なる仮想キーにマップできます。 たとえば、英語 (米国) のキーボード レイアウトでは、P キーの右側にあるキーが "{" にマップされますが、 スウェーデン語 (スウェーデン) のキーボード レイアウトでは、同じキーが "Å" にマップされます。

キーボード フィルターは、スキャン コードまたは仮想キーでキーをブロックできます。 スキャン コードによるキーのブロックは、特定の仮想キーに変換されない特殊なスキャン コードを持つカスタム キーボードに便利です。 仮想キーによるキーのブロックはさらに便利です。なぜなら、より読みやすく、レイアウトの変更によってキーの場所が変わった場合でも、キーボード フィルターによってキーが正しく非表示になるためです。

仮想キーを使用してキーをブロックするようにキーボード フィルターを構成する場合は、仮想キーに英語名を使用する必要があります。 仮想キーの名前の詳細については、キーボード フィルターのキー名を参照してください。

Windows のスクリーン キーボードでは、キーボード フィルターによって、各キーストロークがレイアウトに基づいてスキャン コードに変換され、仮想キーに戻されます。 これにより、スクリーン キーボード キーがスキャン コードまたは仮想キーで構成されている場合、キーボード フィルターを使用して、物理キーボード キーと同じ方法でスクリーン キーボード キーを抑制することができます。

キーボード フィルターと簡単操作機能

既定では、コンピューターの簡単操作機能が有効になっていて、管理者アカウントのキーボード フィルターが無効になっています。

固定キーが有効になっている場合、ユーザーは特定の状況でキーボード フィルターをバイパスできます。 キーボード フィルターを構成して、すべての簡単操作機能を無効にし、ユーザーがこれらを有効にできないようにすることができます。

管理者アカウントのキーボード フィルターが無効になっていることを確認することにより、簡単操作機能を標準ユーザーアカウントに対して無効にしつつ、管理者アカウントに対して有効にすることができます。

キーボード フィルターの構成

キーボード フィルターには、次のオプションを構成できます。

  • 非表示にする定義済みのキーの組み合わせを設定または設定解除します。
  • 非表示にする定義済みのキーの組み合わせを追加または削除します。
  • 管理者アカウントのキーボード フィルターを有効または無効にします。
  • コンピューターの簡単操作機能を強制的に無効にします。
  • ロックダウンされたアカウントから抜け出すための、ブレークアウト キー シーケンスを構成します。

ほとんどの構成の変更は直ちに有効になります。 管理者のキーボード フィルターを有効または無効にするなど、一部の変更は、ユーザーがアカウントからサインアウトしてから再度サインインするまで有効になりません。 ブレークアウト キー スキャン コードを変更する場合は、変更を有効にする前にデバイスを再起動する必要があります。

Windows Management Instrumentation (WMI) プロバイダーを使用して、キーボード フィルターを構成できます。 キーボード フィルターは、PowerShell スクリプトまたはアプリケーションで直接使用できます。

キーボード フィルター WMI プロバイダーの詳細については、「キーボード フィルター WMI プロバイダー リファレンス」を参照してください。

キーボードのブレークアウト

デバイスをサービスまたは構成するには、別のアカウントでロックダウンされたデバイスにサインインする必要がある場合があります。 キー スキャン コードを指定することで、ロックされたアカウントから抜け出すためのブレークアウト キーを構成できます。 このキーがユーザーによって 5 回連続で押されると、ようこそ画面に切り替わり、別のアカウントにサインインできるようになります。

既定では、ブレークアウト キーは、左側の Windows ロゴキーのスキャン コードに設定されます。 WEKF_Settings WMI クラスを使用して、ブレークアウト キー スキャン コードを変更できます。 ブレーク アウト キー スキャン コードを変更する場合は、変更を有効にする前にデバイスを再起動する必要があります。

キーボード フィルターに関する考慮事項

セーフ モードでデバイスを起動すると、キーボード フィルターがバイパスされます。 キーボード フィルター サービスがセーフ モードで読み込まれず、セーフ モードではキーがブロックされません。

キーボード フィルターでスリープ キーをブロックすることはできません。

ローテーション ロックなどの一部のハードウェア キーには、定義された仮想キーがありません。 キーのスキャン コードを使用して、これらのキーをブロックすることもできます。

加算 (+)、乗算 (*)、減算 (-)、除算 (/)、および 10 進 (.) キーは、テンキーの仮想キーとスキャン コードが、メイン キーボードの場合とは異なります。 これらのキーをブロックするには、両方のキーをブロックする必要があります。 たとえば、乗算キーをブロックするには、"*" をブロックする規則と、乗算をブロックする規則を追加する必要があります。

スクリーン キーボードを使用して画面をロックする場合、または物理キーボードとスクリーン キーボードの組み合わせを使用して画面をロックする場合、スクリーン キーボードは、追加の Windows ロゴ キーのキー ストロークを OS に送信します。 デバイスが Windows 10 シェルを使用していて、キーボード フィルターを使用して Windows ロゴ キー + L をブロックしている場合、ユーザーがスクリーン キーボードを使用してデバイスをロックしようとしたときに、追加の Windows ロゴ キーストロークによってシェルがスタート画面と最後のアクティブなアプリを切り替えることになります。これは予期しない動作かもしれません。

Microsoft IntelliType Pro などの一部のカスタム キーボード ソフトウェアでは、キーボード フィルターで一部またはすべてのキー (通常は、BrowserHome や Search などの拡張キー) のブロックを防ぐキーボード フィルター ドライバーをインストールできます。

このセクションの内容