做了什么:
- .NET 5.0 上的应用程序。启用身份验证:
services.AddAuthentication(IISDefaults.Negotiate)
试过了
services.AddAuthentication(IISDefaults.AuthenticationScheme)
作为在浏览器中输入登录名和密码的结果,我们在服务器上获得了身份验证:
"name": "LOCALAD0\\WebTest",
"authenticationType": "Negotiate",
"isAuthenticated": true,
- IIS 仅启用了“Windows 身份验证”。我也尝试在 web.config 中开处方
system.web
authentication mode="Windows"
identity impersonate="true"
authorization
allow users="*"
authorization
system.web
我已阅读并尝试过:
- https://www.codeproject.com/Articles/770347/On-Premise-Application-Identity-Windows-Authentica
- https://docs.microsoft.com/en-us/aspnet/core/security/authentication/windowsauth?view=aspnetcore-5.0&tabs=visual-studio
告诉我如何在 IIS 上启用直通身份验证,而无需从浏览器从 Active Directory 请求登录名和密码?PC在域中,用户在域帐户下获得授权-但是当您进入站点时,浏览器中仍会出现登录名和密码请求窗口。您从 AD 输入数据 - 身份验证通过。如何摆脱请求并使其从 Windows 中获取?
找到了解决问题的方法。它没有隐藏在 IIS 中,也没有隐藏在代码中 - 它们的配置与问题中列出的文章(包括评论)中的一样。
解决方案在于浏览器策略的设置和禁令,这里:https ://community.terrasoft.ru/articles/kak-resit-vopros-s-otobrazeniem-okna-domennoi-avtorizacii-pri-nastroike-autentifikacii
我想有一些组策略的方法,以免在域的每个客户端上进行配置。你可以呼吸...