gpt4 book ai didi

asp.net - 使用 ASPNet Core 托管在 Linux 上的 Windows 身份验证

转载 作者:行者123 更新时间:2023-12-05 00:56:36 25 4
gpt4 key购买 nike

我目前有一个在 Windows 上运行的自托管 Owin 应用程序,如下所示:

public class Program
{
private static void Main(string[] args)
{
using (WebApp.Start<Startup>("http://localhost:9000"))
{
Console.WriteLine("Press Enter to quit.");
Console.ReadKey();
}
}
}

public class Startup
{
public void Configuration(IAppBuilder app)
{
var listener = (HttpListener) app.Properties["System.Net.HttpListener"];
listener.AuthenticationSchemes = AuthenticationSchemes.IntegratedWindowsAuthentication;

app.UseNancy();
}

当请求进来时,用户将使用他们的 Windows 域凭据进行验证。

对于 ASPNetCore,我想知道是否有类似的设置可以使用,但该应用程序使用 Kestrel Web 服务器在 Linux 上运行。

我听说过各种选项,例如 Windows 2016 和 OpenIdConnect 中间件可能有效,或者我可以使用在 Windows 上运行的 IdentityServer 但在 Linux 上使用该应用程序,但我认为需要中间件,我也不清楚是否会有“身份验证舞蹈”暗示它可能不像我现在那样无缝。

任何建议和/或代码示例将不胜感激。

谢谢

最佳答案

任何平台上的 Kestrel 都不直接支持 Windows 身份验证,也没有任何可用的中间件支持 Linux 上的 Windows 身份验证。

通过 Windows 服务器路由登录请求是您唯一的选择。 IdentityServer 将是一个很好的起点。 OpenIdConnect 可能是您以最少的用户交互在两个服务器之间传达身份的最佳选择。

关于asp.net - 使用 ASPNet Core 托管在 Linux 上的 Windows 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36018228/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com