ASP.Net核心:保持windows认证

ASP.Net Core: keep windows authentication

我实际上正在开发一个用户通过 windows 身份验证登录的网站。

我的问题是,实际上所有用户在打开我们的网页时都必须登录。 我想知道是否可以保留 windows 身份验证?也许用饼干?

我通过将此添加到我的 Startup.cs:

来实现身份验证
services.Configure<IISOptions>(options =>
{
    options.AutomaticAuthentication = true;
});

services.AddAuthentication(IISDefaults.AuthenticationScheme);

并在我的项目设置中激活 Windows-身份验证。

之后我就可以使用授权属性了:

[Authorize]
public IActionResult Index()
{
    return View();
}

如果用户没有登录,现在会要求他登录。

有什么方法可以使 windows 身份验证保持活动状态,即使用户正在关闭他的浏览器?

感谢您提前提供帮助和想法!

好吧,我找到了一种方法来获得我想要的东西,但这不是我想要的方式:

我最后声明我的网站是可信的。这里的诀窍是,登录数据总是传递给网络服务器。

在 chrome 中,您可以通过以下方式实现它:菜单 -> 设置 -> 高级设置 -> 更改代理设置 -> 安全 -> 可信站点 -> 添加页面的 URL

可以在此处找到打开该设置的其他方式(Firefoy、IE):https://effortz.com/add-website-browsers-trusted-sites-windows-os/

这样做仅适用于您实际使用的 PC。 这些设置通常由系统管理员管理。在这种情况下,管理员可以将您的站点设置为对您网络中的所有用户都信任。并且每个用户都会自动登录并且登录数据始终可用。