PowerShellによりAzureADにログインする際、javascript(isArray)エラーの発生した場合、解決策を紹介します。
javascript(isArray)エラーの発生可能な原因
ユーザーのサインインに Internet Explorer の WebBrowser というコンポーネントが利用されており、かつ、"互換モード" と呼ばれるモードで動作していることに起因している可能性がございます。
Internet Explorer の "互換モード" ?
Internet Explorer の "互換モード" は、Internet Explorer 7 もしくは 5 相当で html や CSS、JavaScript を解釈しようとします。
エラーの発生の推測
エラーの発生しておりますisArray
につきましては "互換モード" では対応していないためにエラーが発生しているものと推測しております。
エラー解決策
本レジストリ値を設定することにより、"互換モード" ではなく Internet Explorer 11 既定のモードで動作するようになり、事象が改善する可能性がございます。
キー : HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
名前 : PowerShell.exe
種類 : REG_DWORD
値 : 11000 もしくは 11001 (いずれも 10 進数)
また、もし上記のレジストリ値では効果がない場合、下記のレジストリ値への登録もお試す。
キー : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
名前 : PowerShell.exe
種類 : REG_DWORD
値 : 11000 もしくは 11001 (いずれも 10 進数)
64 ビット OS 環境の場合は下記もご設定。
キー : HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
名前 : PowerShell.exe
種類 : REG_DWORD
値 : 11000 もしくは 11001 (いずれも 10 進数)
Array.isArray()