Windows Hello for business展開手順

Windows Hello for business展開手順

Windows Hello for Businessをオンプレミス環境に展開するための手順を解説します。
当社でWindows Hello for Businessの環境構築も承っておりますので、導入を検討されている方はぜひご気軽にご相談ください。

構築する環境について

  • WindowsServer 2022 x 2台(1台目:ADDS・ADCS 2台目:ADFS )
  • オンプレミス展開
  • →追加のライセンス費用無しでの構築・運用が可能です
  • 証明書信頼
  • →リモートデスクトップ接続の際にも顔認証が利用できます。
    また、初回セットアップの際のコード認証を無くし、エンドユーザーの手間を減らせます

目次


展開手順

前提条件

ADDS・ADCSのインストールと構築は済んでいるものとします。
また、ADFSサーバはドメインに参加済みとします。

環境

ドメイン名 : example.local

ADDS・ADCS
OS : WindowsServer2022
ホスト名 : adsvr
IPアドレス : 192.168.210.210

ADFS
OS : WindowsServer2022
ホスト名 : adfssvr
IPアドレス : 192.168.210.211

クライアント端末
OS : Windows11


証明書テンプレートの作成

[AD]
4つの証明書テンプレートを作成します。
  • 1. ドメインコントローラー証明書
  • Kerberos認証からテンプレートを複製

    [互換性]
    証明機関の一覧から [Windows Server 2016] を選択
    証明書の受信者の一覧から [Windows 10/ Windows Server 2016] を選択

    [全般]
    テンプレートの表示名・テンプレート名を指定
    有効期間を目的の値に設定

    [サブジェクト名]
    [Active Directoryの情報から構築する] を選択
    [サブジェクト名の形式] ボックスの一覧から [なし] を選択
    [代替サブジェクトにこの情報を含める] ボックスの一覧から [DNS名] を選択

    [暗号化]
    [プロバイダーのカテゴリ] を [キー格納プロバイダー] に設定
    アルゴリズム名を RSA に設定する
    最小キー サイズを 2048 に設定する
    要求ハッシュを SHA256 に設定する

    [優先するテンプレート]
    以下の証明書テンプレートを追加する
    Kerberos認証
    ドメイン コントローラー
    ドメイン コントローラーの認証


  • 2. ADFSサーバー証明書
  • Webサーバーからテンプレートを複製

    [互換性]
    証明機関の一覧から [Windows Server 2016] を選択
    証明書の受信者の一覧から [Windows 10/ Windows Server 2016] を選択

    [全般]
    テンプレートの表示名・テンプレート名を指定
    有効期間を目的の値に設定

    [要求処理]
    [秘密キーのエクスポートを許可する] を選択

    [サブジェクト名]
    [要求に含まれる]を選択

    [セキュリティ]
    ADFSのコンピュータオブジェクトを追加
    登録のアクセス権を追加

    [暗号化]
    [プロバイダーのカテゴリ] を [キー格納プロバイダー] に設定
    アルゴリズム名を RSA に設定
    最小キー サイズを 2048 に設定
    要求ハッシュを SHA256 に設定


  • 3. WHFB認証証明書
  • スマートカードログオンからテンプレートを複製

    [互換性]
    証明機関の一覧から [Windows Server 2016] を選択
    証明書の受信者の一覧から [Windows 10/ Windows Server 2016] を選択

    [全般]
    テンプレートの表示名・テンプレート名を指定
    有効期間を目的の値に設定

    [サブジェクト名]
    [Active Directoryの情報から構築する] を選択
    [サブジェクト名の形式] ボックスの一覧から [完全な識別名] を選択
    [代替サブジェクトにこの情報を含める] ボックスの一覧から [ユーザープリンシパル名] を選択

    [暗号化]
    [プロバイダーのカテゴリ] を [キー格納プロバイダー] に設定
    アルゴリズム名を RSA に設定
    最小キー サイズを 2048 に設定
    要求ハッシュを SHA256 に設定

    [発行要件]
    [次の数の認証署名] チェック ボックスをオンに設定し[1]と入力
    [署名に必要なポリシーの種類] から [アプリケーション ポリシー] を選択
    [アプリケーション ポリシー] ボックスの一覧から [証明書の要求エージェント] を選択
    [既存の有効な証明書] オプションを選択

    [要求処理]
    [同じキーで書き換え] を選択

    [セキュリティ]
    Authenticated Usersに登録・自動登録のアクセス権を追加


  • 4. ユーザー証明書
  • ユーザーからテンプレートを複製

    [互換性]
    証明機関の一覧から [Windows Server 2016] を選択
    証明書の受信者の一覧から [Windows 10/ Windows Server 2016] を選択

    [全般]
    テンプレートの表示名・テンプレート名を指定
    有効期間を目的の値に設定

    [サブジェクト名]
    [Active Directoryの情報から構築する] を選択
    [サブジェクト名の形式] ボックスの一覧から [完全な識別名] を選択
    [代替サブジェクトにこの情報を含める] ボックスの一覧から [ユーザープリンシパル名] を選択

    [セキュリティ]
    Authenticated Usersに登録・自動登録のアクセス権を追加


WHFB証明書テンプレートの設定

[AD]
PowerShellにて以下のコマンドを実行
certutil.exe -dsTemplate WHFB認証 msPKI-Private-Key-Flag +CTPRIVATEKEY_FLAG_HELLO_LOGON_KEY


証明書テンプレートの発行

[AD]
    作成した4つの証明書テンプレートを発行する
  • DC認証
  • ADFS証明書
  • WHFB認証
  • ユーザー証明書


GPO作成(証明書自動登録)

[AD]
ドメインコントローラー証明書自動登録のためのグループポリシーオブジェクトを作成する

ナビゲーション ウィンドウで、[コンピューターの構成] > [ポリシー] > [Windows 設定] > [セキュリティ設定] > [公開キー ポリシー] を展開
詳細ウィンドウで、[Certificate Services クライアント - 自動登録] を右クリックし、[プロパティ] を選択

[構成モデル] から [有効] を選択
2か所のチェックボックスをオン

ドメインコントローラーのOUにリンク



DC証明書の更新を確認


すぐに登録されない場合はgpupdateでグループポリシーを更新

証明書登録(ADFS証明書)

[ADFS]
certlm > [個人] > [すべてのタスク] > [新しい証明書の要求]を選択



ADFSサーバ証明書の[この証明書を登録するには情報が不足しています。設定を構成するには、ここをクリックしてください。]を選択

[サブジェクト名]では[共通名]を選択し、ADFSサーバの FQDNを入力して[追加]
[別名]では[DNS] を選択し、フェデレーション サービスに使用する名前のFQDNを入力して[追加]

登録を選択


サーバー認証証明書がコンピューターの個人用証明書ストアに表示されることを確認


ADFSのインストール・構成

[ADFS]
フェデレーションサービスの追加


PowerShellにて以下のコマンドを実行
Add-KdsRootKey -EffectiveTime (Get-Date).AddHours(-10)


ADFSの構成

SSL証明書では先ほど登録したものを設定
[フェデレーションの表示名]は任意の名前を設定


グループ管理サービスアカウントの作成でアカウント名を[adfssvc]に設定

正常に構成されたことを確認


ADFSの設定

[ADFS]
ADFSのグループサービス管理アカウントをKey Adminsに追加
[ツール] > [ADユーザーとコンピュータ] > [Users] > [KeyAdmins]のプロパティを選択

[ユーザ]にてadfssvc(ADFSのグループサービス管理アカウント)を追加


ADFSデバイス登録サービスの構成
[ADFS]>[サービス] > [Device Registration]から[Device Registrationの構成]を選択

ウィンドウで[OK]を選択

状態が緑になることを確認


証明書テンプレート作成・発行(WHFB登録エージェント証明書)

[AD]
証明書テンプレートの作成
Exchange登録エージェント(オフライン要求)から複製

[互換性]
証明機関の一覧から [Windows Server 2016] を選択
証明書の受信者の一覧から [Windows 10/ Windows Server 2016] を選択

[全般]
テンプレートの表示名・テンプレート名を指定
有効期間を目的の値に設定

[サブジェクト名]
[要求に含まれる]を選択

[暗号化]
[プロバイダーのカテゴリ] を [キー格納プロバイダー] に設定
アルゴリズム名を RSA に設定する
最小キー サイズを 2048 に設定する
要求ハッシュを SHA256 に設定する

[セキュリティ]
adfssvc(ADFSのグループサービス管理アカウント)を追加し、登録・自動登録のアクセス権を追加


証明書テンプレートの発行
WHFB登録エージェント証明書テンプレートを発行



ADFS認証方法の追加

[ADFS]
[ADFS]>[サービス] > [認証方法] > [プライマリ認証方法の編集]

全ての認証方法をチェック

[追加]タブで[証明書認証]をチェック

チェックを入れた項目が表示されていることを確認


ADFS ファイアウォールの有効化

[ADFS]
[ツール] > [セキュリティが強化されたWindowsDefenderファイアウォール] > [受信の規則]
ADFS関連の規則3つを有効化



SPNの設定

[ADFS]
コマンドプロンプトにて以下のコマンドを実行
setspn -s HTTP/example.local adfssvc
setspn -s HTTP/example adfssvc
setspn -L adfssvc (追加設定が登録されていることを確認)


DNSレコードの設定

[AD]
[DNS] > [前方参照ゾーン] > [(ドメイン名)] > [新しいエイリアス(AまたはAAAA)]

[名前]にフェデレーションサービス名、[[IPアドレス]にADFSサーバのIPアドレスを入力し、[ホストの追加]

[新しいエイリアス(CNAME)]

[エイリアス名]に[enterpriseserverregistration]、[ターゲットホスト用の完全修飾ドメイン名]にフェデレーションサービスのFQDNを入力して[OK]

レコードが追加されていることを確認


WHFB認証証明書の設定

[ADFS]
・WHFB認証で使用する証明書の設定
PowerShellにて以下のコマンドを実行
Set-AdfsCertificateAuthority -EnrollmentAgent -EnrollmentAgentCertificateTemplate WHFB登録エージェント -WindowsHelloCertificateTemplate WHFB認証
・設定の確認
コマンドを実行後、設定した証明書テンプレートの名前が表示されること
Get-AdfsCertificateAuthority


ADFSサービス再起動

[ADFS]
ADFSサービスの再起動を実行


GPO作成(WHFB用)

[AD]
GPOの編集を行う(6か所)

コンピューターの構成\管理用テンプレート\Windows コンポーネント\Windows Hello for Business

Windows Hello for Business の使用


※サインイン後にWindowsHelloのプロビジョニングを開始しないをクリックすると、エンドユーザー側の任意のタイミングでセットアップが可能

オンプレミスの認証に証明書を使用する


ハードウェアのセキュリティ デバイスを使用する


3項目が有効であること
・Windows Hello for Business の使用
・オンプレミスの認証に証明書を使用する
・ハードウェアのセキュリティ デバイスを使用する

コンピューターの構成\Windows 設定\セキュリティ設定\公開キー ポリシー
Certificate Services クライアント - 自動登録
(オプション2か所チェック)


コンピュータの構成\管理用テンプレート\システム\グループポリシー
ユーザーグループポリシーループバックの処理モード
モードは[統合]を選択する
※この項目はユーザーオブジェクトのOU移動を実施しない場合のみ有効にする


ユーザーの構成\Windows 設定\セキュリティ設定\公開キー ポリシー 
Certificate Services クライアント - 自動登録(オプション2か所チェック)


GPOをWHFB用OUにリンク



クライアント端末にGPO適用

[AD]
ドメインに参加しているコンピュータオブジェクトをWHFB用OUにを移動




顔認証画面の確認

[クライアント]
グループポリシー適用後、サインイン時に顔認証とPIN設定の画面が表示される