我的web.config文件中有以下内容。
<location path="login.aspx">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>这意味着,在转到登录页面时,系统会提示用户输入Active Directory登录以访问该页面。有没有办法让IIS/ASP.net自动获取此信息,以便我可以使用以下信息
HttpContext.Current.User.Identity.Name在登录页面上建立自动登录。
如果此字符串不为空,我将对照包含由外部应用程序管理(也管理网站内的权限)的许可用户列表的数据库表进行检查。
我想让这个过程自动化的原因是,如果用户没有他们的名字输入到这个数据库中,他们应该向他们呈现一个正常的登录屏幕,其中自然有各种覆盖登录(表单身份验证),虽然这不是自动的,最终用户将不得不输入登录(这可能是有效的活动目录的上下文中),但对于web应用程序而言是无效的。
我发现删除该部分
<deny users="?"/>不提示输入active directory登录,也不提示输入
HttpContext.Current.User.Identity.Name = String.Empty发布于 2014-05-12 17:44:33
您需要确保在IIS上启用Windows身份验证并禁用匿名身份验证

如果您的Windows服务器不包含windows身份验证方案:
打开服务器管理器(一种方法是从开始菜单中右键单击计算机节点,然后选择管理)。展开“角色”节点。右键单击Web服务器(IIS),然后选择添加角色服务。您将看到以下向导,只需向下滚动一点并选中安全节点下的Windows身份验证。
https://stackoverflow.com/questions/23605410
复制相似问题