ユニバーサルWindowsプラットフォームアプリにフィッシング耐性のある認証を有効にする

ユーザーがMicrosoft ユニバーサルWindowsプラットフォーム(UWP)およびOffice 365アプリにアクセスする際にフィッシング耐性のある認証を行うには、スクリプトを実行する必要があります。

背景

ネットワークの分離を維持するために、UWPアプリはIPC(Inter-Process Communication)のループバック接続をデフォルトで無効にします。ただし、Oktaでは、認証アプリとOkta Verify間の通信にループバック接続を使用します。これは認証を要求するフィッシング耐性のメカニズムです。

Okta VerifyがUWPアプリで意図したとおりに確実に動作するには、PowerShellスクリプトからループバック除外を提供する必要があります。UWPアプリのループバックの有効化を参照してください。

除外を有効にする

昇格されたWindows PowerShellのスクリプトを実行します。

  1. Windowsスタート(Start)ボタンをクリックします。

  2. PowerShellと入力して、Windows PowerShellアプリを見つけます。アプリを右クリックし、管理者として実行(Run as administrator)を選択します。

    デバイス管理ソリューションからスクリプトを実行することもできます。

  3. 次のスクリプトをWindows PowerShellウィンドウにコピーしてスクリプトを実行します。

    $packageFolder = [System.Environment]::GetEnvironmentVariable("LOCALAPPDATA") + "\packages"
    $packages = Get-ChildItem -Path $packageFolder | Where-Object { ($_.Name -Match "Microsoft.AAD.BrokerPlugin") -or ($_.Name -Match "AuthHost") }  | select -expand Name
    
    foreach ($package in $packages)
    {    
      Write-Host "Creating loopback exemption for" $package    
      $command = "CheckNetIsolation.exe LoopbackExempt -a -n=" + $package     
      cmd.exe /c $command
    }

除外を元に戻す

次のスクリプトを使用して、ループバック除外をデフォルトの動作に戻すことができます。

上記の手順と同様に、昇格されたWindows PowerShellのスクリプトを実行する必要があります。

  1. Windowsスタート(Start)ボタンをクリックします。

  2. PowerShellと入力して、Windows PowerShellアプリを見つけます。アプリを右クリックし、管理者として実行(Run as administrator)を選択します。

    デバイス管理ソリューションからスクリプトを実行することもできます。

  3. 次のスクリプトをWindows PowerShellウィンドウにコピーしてスクリプトを実行します。

    $packageFolder = [System.Environment]::GetEnvironmentVariable("LOCALAPPDATA") + "\packages"
    $packages = Get-ChildItem -Path $packageFolder | Where-Object { ($_.Name -Match "Microsoft.AAD.BrokerPlugin") -or ($_.Name -Match "AuthHost") } | select -expand Name
    
    foreach ($package in $packages)
    { 
     Write-Host "Reverting loopback exemption for" $package 
     $command = "CheckNetIsolation.exe LoopbackExempt -d -n=" + $package 
     cmd.exe /c $command
    }

関連項目

フィッシング耐性のある認証