【问题标题】:ASP.NET Windows Authentication using server-local accounts?使用服务器本地帐户的 ASP.NET Windows 身份验证?
【发布时间】:2020-11-10 06:21:15
【问题描述】:

我正在尝试设置一个 ASP.NET 应用程序以使用 Windows 身份验证。 但是 IIS 服务器不是域的一部分,它是托管在我们 Rackspace 帐户中的唯一服务器。

我想让 Windows 身份验证模块根据 IIS 服务器上的 本地 Windows 用户列表进行验证。这可能吗?

匿名身份验证已关闭
基本身份验证已关闭
Windows 身份验证已开启

但是当我输入本地计算机帐户的凭据时,
machinename\user
password
它似乎不起作用。它只是再次提示我。

【问题讨论】:

    标签: asp.net authentication windows-authentication


    【解决方案1】:

    是否可以进行本地机器验证,如下所示:

    var bool valid = false;
    using (var  context = new PrincipalContext(ContextType.Machine))
    {
        valid = context.ValidateCredentials(username, password);
    }
    

    【讨论】:

    • 这看起来你会做表单身份验证,只是自己手动检查本地机器?我们需要它是 Windows 身份验证,并弹出浏览器提示输入用户/密码。
    • 这种情况,只是在 IIS 站点中启用 Windows 身份验证。
    • 这就是我所拥有的。我关闭了匿名身份验证,并打开了 Windows 身份验证。但它似乎不适用于服务器上存在的本地帐户(不是域帐户)。
    • 本地测试成功。见pasteboard.co/JiSPSOP.png
    【解决方案2】:

    您似乎可以使用本地帐户,但是当帐户尝试进行身份验证时,我遇到了某种服务器错误。

    一旦我在事件日志中发现错误并获得状态码,我就能够追踪它,并找到this answer,它确实有效!

    【讨论】:

      猜你喜欢
      • 2011-10-08
      • 1970-01-01
      • 2021-04-27
      • 1970-01-01
      • 2016-06-10
      • 2015-02-20
      • 2018-06-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多