问题标签 [mixed-authentication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10861 浏览

iis - IIS 中的匿名访问和 NTLM 身份验证

我有一个使用 IIS 设置的服务器,并且我的站点有一些页面应该允许匿名访问和一些页面应该需要“集成 Windows 身份验证”。在 IIS 的身份验证方法屏幕上,您似乎可以同时启用“集成 Windows 身份验证”和匿名访问,但我阅读的文档似乎表明您只能使用其中一种。

有谁知道如何允许匿名访问某些页面并要求对其他人进行 NTLM 身份验证?

谢谢,

0 投票
2 回答
1097 浏览

asp.net - 会话对象的 ASP.NET 混合 Windows/窗体身份验证问题

这里有一个奇怪的问题,我们正在运行一些混合环境的 Web 应用程序,这些应用程序使用 Windows 或 Forms 身份验证,具体取决于用户来自哪里。

我很好奇其他人如何处理过期的会话,以避免有人将空闲会话打开太久然后尝试恢复工作,主要是寻找有关该主题的最佳实践。

任何建议或意见将不胜感激。

谢谢,

0 投票
1 回答
634 浏览

asp.net - ASP.NET 应用程序中的混合身份验证

我有一个使用表单身份验证的 ASP.NET 应用程序。

我们正在添加响应 /webdav 文件夹及以下文件夹中的请求的 HttpModule。我们需要对这些请求使用基本/摘要身份验证。

<authentication>根 web.config 中设置为 Forms 后,来自 webdav 客户端的请求将收到 302,将用户重定向回登录页面。

MADAM是实现这一目标的最佳方式吗?

0 投票
1 回答
592 浏览

visual-studio - TFS 2010 中的混合模式身份验证 (SQLMembershipProvider )

我是 TFS 2010 (Team Foundation Server 2010) 的新手,我期待使用混合模式身份验证在 TFS 中对用户进行身份验证。我的意思是使用带有 SQLMembershipProvider 和 SQLRoleProvider 的 Windows 模式身份验证和 SQL 身份验证。

这可能吗?

提前致谢!

贡萨洛

0 投票
1 回答
3422 浏览

asp.net-mvc-3 - ASP.Net MVC 3 区域和混合模式身份验证

是否可以让 ASP.Net MVC 区域使用与应用程序的其余部分不同的身份验证?主应用程序必须是表单身份验证,因为它是外联网。我需要有一个只有内部员工才能访问的管理部分。我做了很多研究,并找到了如何执行混合模式的示例,但我没有找到任何显示如何使用 ASP.Net MVC 区域执行此操作的示例。

谢谢你的帮助。

0 投票
1 回答
1486 浏览

c# - AuthCookie 已设置,仍被重定向到 login.aspx

我正在 C# Web 应用程序中设置混合模式身份验证。我在 WindowsAuthentication 网站中设置了 AuthCookie,然后尝试重定向到 FormsAuthentication 网站。我认为 cookie 位于正确的路径中,因为 Context.Request.IsAuthenticated 是正确的。不幸的是,我一直被重定向到 FormsAuthentication 网站的登录页面,就好像我没有设置 AuthCookie 一样。到底是怎么回事?

我不熟悉 ASP.NET 中的身份验证是如何工作的,所以请像我 5 岁一样向我解释一下。谢谢,:)

编辑:这是制作 cookie 的 WindowsAuth 站点的 Global.asax 中的事件。此站点当前位于 FormsAuth 站点“下”的路径 /authentication 中。

0 投票
1 回答
8428 浏览

c# - Windows 和 IIS 7.5 上的匿名身份验证,允许内部自动登录和外部手动登录

设想:

  • https asp/asp.net 网站运行的 IIS 7.5 (windows server 2008)
  • IIS 当前配置为允许匿名身份验证和表单身份验证,asp.net 模拟在未安装 windows 身份验证时被禁用(我知道为此需要安装 windows 身份验证。)
  • 内部和外部用户的单个自定义登录页面

要求:

  • 内部用户在捕获其 LOGON 名称的同时无缝登录(窗口身份验证)
  • 应提示外部用户(不在域上)手动登录

问题:

  • 可以使用什么方法来实现这一点?
  • 寻找 IIS 7.5 和 web.config 设置

发现的方法:

  1. 在 1 个网站内制作 2 个页面,winlogin 和 weblogin(首页)。在 winlogin.aspx 上允许 windows auth=true 和匿名 auth=false,反之亦然
  2. 将 winlogin.aspx 作为主页并将 401 错误重定向到 weblogin.aspx
0 投票
1 回答
181 浏览

asp.net - 排查为什么 WindowsAuthentication 模块没有为特定页面启动

几年多来,我们已成功使用本文中概述的方法在我们的 Asp.Net 应用程序中启用混合模式身份验证: https ://stackoverflow.com/a/7735008

我们有 2 个页面,Login.aspx 和 WindowsLogin.aspx,其中包含上面帖子中突出显示的适当元素。直到最近它发生故障时,一切都运行良好,我们无法弄清楚它发生故障的原因或时间(几个月来,我们一直在研究我们应用程序中的主要新功能,我们添加了一些托管模块和其他东西,但我曾尝试一次消除一个,但无济于事)。

我们为我们的全局身份验证定义了这个:

然后完全按照引用的帖子中的适当元素。现在,当我直接在浏览器中访问 WindowsLogin.aspx 时,它 302 将我重定向到 Login.aspx,返回 url 设置为 WindowsLogin.aspx。我尝试通过消除所有不需要的配置来简化 web.config,直到剩下的只是简单的身份验证和其他部分。仍然 WindowsLogin.aspx 重定向到 Login.aspx(即 WindowsLogin.aspx 页面上的窗体身份验证正在启动)。

有趣的是,如果我将 loginUrl 更改为 WindowsLogin.aspx(其他所有内容完全相同),那么 WindowsLogin.aspx 会按预期向我显示本机浏览器身份验证挑战。

我已经尝试并用尽了所有我能想到的将 loginUrl 设置为 Login.aspx 的选项,但它根本不起作用。

我为 302 重定向启用了 IIS 跟踪规则,并捕获了一个日志文件,其中 WindowsLogin.aspx 正在重定向到 Login.aspx(loginUrl 设置为 Login.aspx)。跟踪文件可在此处获得:http: //imbibe.in/public/fr000001.xml

有人可以帮我弄清楚为什么当它的 WindowsAuthentication 模块应该在那里进行身份验证时,FormsAuthentication 模块会在 WindowsLogin.aspx 页面上启动。为什么只是切换登录 url 会在 Windows Auth 页面上引发 401 挑战。我们正在 Win Server 2008 上使用 IIS 7.5。

更新:我创建了一个简单的 Web 应用程序,只有 3 个页面,默认、登录和 WindowsLogin,并在同一台服务器上遵循混合模式身份验证方法,它工作正常。这显然意味着它在我们的应用程序/应用程序池中存在干扰。我希望所提供的 IIS 跟踪日志可以对此有所了解。如果我完全<authentiction mode="Forms">从我们的应用程序的 web.config 中删除(这基本上意味着没有启用身份验证),那么 Login 和 WindowsLogin 页面就可以正常工作。但仅使用当前配置,转到 WindowsLogin 会重定向回 Login.aspx。

0 投票
0 回答
499 浏览

asp.net-mvc-5 - MVC5 OWIN 项目中的 Cookie+Basic 或 Cookie+Digest 认证

我需要在 ASP.NET MVC5 OWIN 项目中支持混合(Cookie+Basic 或 Cookie+Digest)身份验证。

目标是向任何使用 Cookie 或其他自定义身份验证(通过使用我们的自定义向导)的 Visual Studio 项目轻松添加基本或摘要身份验证

混合身份验证(即 Cookie+Basic)应按以下方式工作:

  1. 尝试cookie认证;
  2. 如果上述失败并出现错误 403(在我们的例子中,如果从 MS Office 应用程序访问资源),而不是“403 未授权”响应发出基本身份验证。

上述也称为混合身份验证配置,我们在 MVC5 / OWIN 之前的 Visual Studio 的早期版本中一直使用自定义 HTTP 模块来实现这一点。

我现在要实施的最简单的解决方案是:

  1. 从Katana 项目源创建 Microsoft.Owin.Security.Cookies 中间件的副本 ;
  2. 在 AuthenticationHandler 实现中实现回退到基本(或摘要)身份验证。对于基本身份验证,我将使用Thinktecture.IdentityModel库中的实现。
  3. 使项目使用新的中间件而不是 cookie 中间件。

不幸的是,微软实现中的很多类都有“内部”访问修饰符,因此我发现自己不得不从微软实现中复制大量代码。

当收到错误 403 时,有什么更好的建议如何实现从 Cookie 到 Basic 或 Digest 身份验证的回退(我需要两种实现)?

0 投票
0 回答
194 浏览

asp.net-mvc-4 - asp.net MVC + Custom STS for Windows & 基于 SQL 的混合身份验证(外部和内部用户)

我有内部用户,我需要使用 Windows 身份验证和其他存储在 SQL 表中的外部用户进行身份验证。

我需要能够根据场景对两者进行适当的身份验证,例如,

  1. 如果内部用户在从网络登录时从浏览器打开 Web 应用程序,则只需采用 windows 身份验证路由,建立身份并继续......没有登录屏幕。
  2. 如果外部用户从 Internet 登录,则提供优雅的登录页面并使用基于 SQL 的存储对其进行身份验证。用户名格式为电子邮件 ID。
  3. 如果内部用户从 Internet 登录,则提供登录屏幕并基于用户名中的格式(如域\用户名,没有浏览器提示输入凭据)并使用 AD 对其进行身份验证。

所有这些都需要通过自定义 STS(基于 wif)进行,如何一起完成?有没有现成的框架可以做到这一点?互联网上有任何代码/文章吗?