asp.net - Windows 和匿名身份验证并排

标签 asp.net authentication

我需要有关根据用户位置对用户进行身份验证的帮助。问题是这样的:如果用户在域外访问网站,则用户必须填写登录页面,并且他提供的凭据必须从自定义凭据存储中进行身份验证。如果用户是 Active Directory 用户,则必须将他定向到他想要的资源而不要求提供凭据。

如果我为 Web 服务器同时启用匿名身份验证和 Windows 身份验证,则首先使用匿名身份验证,即使用户是 Active Directory 用户,我也无法访问他的域信息。

任何人都可以帮忙吗?

最佳答案

我知道的一种方法是设置一个页面,例如 AdLogin.aspx,以拒绝匿名用户并让该页面将他们登录到 Forms Authenication 模块中。然后,您必须创建一个自定义 401 错误页面,该页面从您的 AdLogin 重定向到您的表单登录页面。我不喜欢的一件事是 AD 用户总是试图通过 Forms 登录页面登录,并且很难为 AdLogin 页面添加书签,因为它只是进行自动重定向。我也不喜欢它如此依赖自定义 IIS 配置。

详情见我的回答:ASP.NET Application to authenticate to Active Directory or SQL via Windows Authentication or Forms Authentication

关于asp.net - Windows 和匿名身份验证并排,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4265302/

相关文章:

java - 如何创建一个java程序让用户使用密码登录并存储数据

php - 本地主机上跨子域的用户身份验证

asp.net - 用一行点填充剩余的表格单元格

c# - 是真的-垃圾收集器不会收集结构类型的对象

c# - RadComboBox.SelectedItem 不能分配给 -- 它是只读的

python - Django 登录未获取所有字段

java - 如何将身份验证从 LDAP 更改为 JDBC 以保护我的应用程序

c# - 是否有可能在代码中丢失过度继承?

asp.net - 在 .NET 中使用 WCF 如何让它像 ASMX 一样自动生成 SOAP 文档?

asp.net - 使用 ASP.NET 表单例份验证的 WCF 服务