現象
Windows認証が有効なASP.NETアプリケーションで以下の現象が発生した。
- Chromium Edge(またはGoogle Chrome)でアクセスすると、「Windowsセキュリティ このサイトにアクセスするにはサインインしてください」というダイアログが出る。
- 有効なWindowsユーザー名/パスワードを入力し「OK」を押しても、再度同じダイアログが表示され、サイトにアクセスすることができない。
- 旧バージョンのEdgeやInternet Explorerでは問題なくアクセスできる。
対処方法
- IISでアプリケーションの「Authentication」を開く。
- 「Windows Authentication」を右クリックし「Providers」を開く。
- 「Negotiate」を削除し、「NTLM」だけの状態にする。
なお、この操作によってWeb.configのsystem.webServer内に以下の設定が追加される。
<security>
<authentication>
<windowsAuthentication>
<providers>
<clear />
<add value="NTLM" />
</providers>
</windowsAuthentication>
</authentication>
</security>
IISで操作する代わりに、直接Web.configを編集し、この設定を追記してもよい。