2014.11.15: セキュアブートに関する項目を追記
2013.10.22: Windows8の起動時に毎回「スタートアップ設定」画面を表示できるようにする小技を追記紹介。
2012.09.06: 初出
64bit 版Windows 8/8.1では、デジタル署名の無いドライバや特殊なアプリのインストール方法が、Windows7(x64)の頃と大幅に違っているのでメモ書き。
テストモード移行だけで「署名なしドライバ」をインストールした場合
▲クリックで拡大
「サードパーティのINF にデジタル署名情報が含まれていません。」
Windows8のx64版は、標準状態だとインストールするドライバ本体のデジタル署名だけでなくINFファイルにも署名が要求されるようになりました。
テストモードに移行しただけ・ドライバ署名強制の無効化だけではこのメッセージが出てしまい、インストール出来ない・・・なんて場合の対処方法も書いてあります。
検証OS
Windows8、Windows8.1、およびそれらのEnterprise90日評価版、Windows To Go でUSBブートしたOSで確認。
すべて同様の手順で署名なしドライバをインストール可能な事を確認できました。
このページの要点
64bit版 Windows 8では「デジタル署名の無いドライバをインストール」する以外に「出所の怪しいツールをインストールする」場合でも、Windows8に変更を加える必要があるようです。変更を加えるのは以下4点。
- BIOS/UEFI上から、セキュアブートの設定を無効にする
- Windowsをテストモードに移行させる
- Windows Smart Screen の設定を無効化する
- 「ドライバー署名の強制」を無効化する
署名無しドライバをインストールする場合は上記「1.~4.」、全部必要。
(MBR形式でOSインストールした場合はセキュアブートは最初から無効)
一旦インストール出来てしまえば、ドライバ利用時は「1.~3.」を元に戻して「4.」だけ実行すればOKなケースもあり。
各項目の解説
- 署名無しドライバを作動させるには、テストモードにしておく必要がある。
テストモードにしなくても作動するものもあるが、その境界がわからない。各自が手持ちのツールで確認する必要あり。
- [ドライバー署名の強制の無効化]はPCを再起動すると効果が切れるので注意。
- Smart Screen の無効化はインストールする時だけ必要。インストール成功したら(セキュリティの問題もあるので)元に戻すのが好ましいかも。
(でもなんかMicrosoftに変な情報送ってる感じがするのでチョット怖い) - デジタル署名の無いドライバおよびOSのテストモードは、UEFIのセキュアブートの機能で自動的にロックされる。
(WindowsをMBR形式でインストールしている場合はセキュアブート機能しない)
OSをテストモードに移行する時は、まずUEFIのセキュアブートを無効にしておくこと。
(セキュアブートは一度無効化すると、再度有効化するにはOSのクリーンインストールが必要な場合があるので、注意すること(機種による。必ずしもそうではない))
注意点1
個人的にハマってしまったのが、「ドライバー署名の強制のを無効化は、一度PCを再起動すると無効になってしまう点。これに気が付かず「上手く行かない時はPC再起動が鉄則だぜえ~」と何度もPC再起動を繰り返しドツボにハマっていました(^_^;
ただテストモードにしただけでは「ドライバー署名の強制」の無効化は出来ません。
注意点2
VMware上で確認した際、「Windows Smart Screen の設定を無効化」は不要だった。PC環境によってはコレ不要かも。
その他Tips
ドライバ署名はあるけどWindows8未対応のドライバの場合は、インストーラーを互換モード指定すればインストール出来る場合があります。
例えば(現時点では)バッファローの無線LANのWindows7用のドライバは、「Windows7互換モード」にする事でWindows8にインストール可能です。
ASUSのマザーボードChipset・SATAドライバなどは(こちらを参照)OSチェックの無いsetup.exeを選択することでインストール可能です。
以下、署名無しドライバや特殊なアプリのインストール方法。
Administrator・一般ユーザーで操作方法は同じ。
手順1.テストモードへの移行
UEFI(GPT)形式で OSをインストールしている場合、まずマザーボードのUEFI画面で「セキュアブート」を「無効」に設定する必要があります。
また同時に、UEFI画面で「Fast Boot」の設定も確認しておくのが無難です。
(署名なしドライバはFast Bootに未対応な場合が多いため、初期化をすっ飛ばさない方が良い。)
マザーボード上の設定が終わったら、Windowsを起動し、コマンドプロンプト(管理者)で以下を実行します。
テストモードに移行するコマンド
bcdedit /set TESTSIGNING ON
元に戻す方法
bcdedit /set TESTSIGNING OFF
手順2.「ドライバー署名の強制を無効」化する
※補足:
UEFIマザーの「セキュアブート」とWindows側の「デジタル署名の強制」は別機能です。
セキュアブート無効化と合わせ、こちらの無効化も必要になります。
従来のような「PC起動時にF8キーを押して署名無効化」は出来なくなっています。
以下は、通常の手順
[チャーム]>[設定]>[PCの設定変更]
>[全般]>[PCの起動をカスタマイズする]>[今すぐ再起動する]
>[トラブルシューティング]>[詳細オプション]
>[Windowsのスタートアップ設定]を開く
▲最終的に、このような画面になるので
右下の「再起動」をクリックしてPCを再起動させる
PCを再起動させると、再び似たような画面が出る。
▲この画面で「7)ドライバー署名の強制を無効にする」を選択する。
(つまりキーボードの[7]を叩く)
これでデスクトップ上に「テストモード」の文字が表示され、署名なしのドライバーもインストール出来るようになる。
元に戻す方法
PCを再起動すると元に戻る
以下、少し脱線して Windows起動時の小技を紹介します。
小技1: Windows8の起動時に毎回「スタートアップ設定」画面を選択できるようにする
管理者権限でコマンドプロンプトを起動し
bcdedit /set {default}advancedoptions yes
または
bcdedit /set advancedoptions on
と入力する事で、Windows8を起動する際に毎回「スタートアップ設定」画面を呼び出せるようになります。
詳細は以下ページで解説しています。
Windows10/8.1でPC起動時に署名制限の無効化やセーフモードを選択できるようにする
小技2: 次回のWindows8起動時に1回だけ「スタートアップ設定」画面を選択できるようにする
「ファイルを指定して実行」から、
shutdown /r /o /t 0
と入力すると「起動オプションの選択画面」に直行出来ます。
なかなか便利です。
参考URL:【ハウツー】レッツ! Windows 8 - セーフモードを呼び出す四つの方法 (3) コマンドラインを利用する方法 | パソコン | マイナビニュース
脱線終わり。手順の続きです。
手順3. Windows Smart Screenの無効化
[コントロールパネル]>[アクションセンター]を開き、
[Windows Smart Screen 設定の変更]を開く
▲クリックで拡大
認識されないアプリをどのように処理しますか?の問いに
「何もしない」を選択して[OK]をクリックする
元に戻す方法
上記ダイアログボックスで「何もしない」以外を選択する。
以上で手順は終了です。
あとは、普通にドライバをインストールすればOKです。
成功画面
▲クリックで拡大
HDUS (BonDriver_nnb.dllを利用)+TVtestで地デジ視聴が可能に。
2009年頃の古い手法も大丈夫でした。
▲Kinect(x360版)+OpenNI+PrimeSense NITE で無事Kinectを認識&起動
こちらは最新のドライバを利用。
失敗画面1.署名強制を無効化していない場合
以下、昔懐かしいHDUSの改造ドライバを例に。
▲クリックで拡大
「指定されたカタログ ファイルにファイルのハッシュがありません。ファイルが壊れているか、改ざんされた可能性があります。」
Windows 8のドライバ署名強制を無効化しておかないと、このようなメッセージが出た。
失敗画面2. Smart Screenを無効化していない場合
▲クリックで拡大
「サードパーティのINF にデジタル署名情報が含まれていません。」
Windows8からは、(64bit版の場合)INFファイルにもデジタル署名が必須となりました。
ドライバ本体だけデジタル署名があっても、通常はインストールできません。
あと、Kinect 360の非公式ドライバのOpenNIとPrimeSense NITEは警告が出てインストーラーすら起動できない状態になってしまった(スクリーンショット失念)
HDUS+TVTestについて補足
BonDriver_nnb.dllを利用した場合、なぜか「カードの初期化に失敗しました」となる
(x64 Windows7は同じバージョンのソフト・ドライバで正常作動する)
▲この様な状態となり最初は上手く作動しなかったが、HDUSを一度抜き差ししなおして再びTVTestを起動し、「カードリーダなしで起動する」を選択すると無事作動した。
ドライバをインストールした後は、OSをテストモードにしておけばOK。
ドライバ署名強制の無効化なし・SmartScreen有効でも無事作動する。
※2013年8月追記:ドライバインストール後の運用について
ドライバのインストールに成功してしまえば、テストモードを解除しても作動するドライバの方が多い感じです。
Kinect 360の非公式ドライバはテストモードを解除しても作動します(通常運用が可能)。
HDUSドライバは、テストモード解除またはドライバ署名の無効化、どちらかを指定しなければ作動しない感じです
SmartScreenの無効化は、一部のドライバインストール時に必要な手順で、殆どの場合はインストール時・運用時ともに有効にしていても大丈夫な感じです。
※後日追記:
上記の挙動は、Cドライブが「MBRディスクかGPTディスクか」、またGPTディスクの場合でも「セキュアブートが有効か無効か」で変わる可能性があります。
この文章を記載した時はMBRディスクにOSをインストールしています。
過去参考にした情報
注) CP時代の古い情報です- 836 :名無し~3.EXE:2012/03/03(土) 20:33:30.41 ID:sErNTm9t
- Win8CPのx64版は標準状態だと
- インストールするドライバ本体のデジタル署名だけでなく
- INFファイルにも署名が要求されるようになった
- (INFファイルの署名=.catファイル)
- Vista/Win7やWin8DPのx64版は
- INFファイルにデジタル署名がなくても
- ドライバ本体にデジタル署名があればドライバをインストールできていたのでWin8CPでx64版のドライバに対するインストール条件が厳しくなった
- 837 :名無し~3.EXE:2012/03/03(土) 20:35:52.40 ID:sErNTm9t
- ちなみにWin8CPのx86版はWin7までのx86版と同様に
- 署名なしドライバでも警告が出るだけで自己責任でインストール可能
▲転載元
windows7enterpriseスレ part3
http://toro.2ch.net/test/read.cgi/win/1317652920/836-837
- 25 名無しさん@編集中=sage=2012/03/01(木) 21:25:17.74 ID:Ix6uSJrh
- >>18
- Win8CPでもx86(32bit)版なら
- Win7までと同じようにWinUSB1.9がインスコできてKTVでTVTest使えた
- x64(64bit)版だと同じように
- 「INFファイルに署名がない」みたいなエラーメッセージが出て
- WinUSB1.9がインスコできなかった
- Win8でもCPの前のDPなら
- x64版でもドライバ本体にデジタル署名があれば
- INFファイルの署名(.catファイル)は必要なかった(Win7までと同じ)から
- CPになってx64版でのドライバ制限がきつくなったということみたい
- 他のチューナーやデバイスでも
- INFファイルの署名がない製品は多いから
- この仕様のまま製品化されるとx64版でドライバに困ることが増えそう
- F8起動も使えなくなったみたいだし
【KEIAN】KTV-FSUSB2/FSPCIE総合 43
http://anago.2ch.net/test/read.cgi/smartphone/1330455512/25
Windows8 CP版リリース直後はかなり絶望感漂っていましたが、なんとかなりそうですね(^_^;
あと署名付きWinUSBだと、どういう挙動するかな。。。?
おまけ
Windows 8のプリインストールマシンで他のOSがブートできない可能性(スラッシュドット・ジャパン) - エキサイトニュース
Windows8は、想像以上にセキュリティがガチガチですな。
何も考えずにネットを閲覧しまくるにはかなり快適なOSになりそうですが、OSやハード構成をカスタマイズして遊ぶ人には苦労の多いOSになりそうです。
情報URL
他サイトさんの手順。 このページとほぼ同じ手順です
情報的備忘録 : [Windows8]セキュアブートを解除せよ!!