C#面:在 MVC 中如何执行 Windows 认证?

在 MVC 中执行 Windows 认证可以通过以下步骤实现:

  1. 在 Web.config 文件中启用 Windows 身份验证。找到 <system.web> 节点,并确保已经添加或者设置。
  2. 在 Controller 的 Action 方法上使用 Authorize 属性来限制只有经过 Windows 身份验证的用户才能访问该 Action 方法。
  3. 在 View 中可以使用 User.Identity.Name 来获取当前经过 Windows 身份验证的用户名。

示例代码:

在 Web.config 文件中添加以下配置:

html 复制代码
<system.web>
  <authentication mode="Windows" />
  <authorization>
    <deny users="?" />
  </authorization>
</system.web>

在 Controller 中添加以下代码:

cs 复制代码
[Authorize]
public class HomeController : Controller
{
    public ActionResult Index()
    {
        string username = User.Identity.Name;
        // 其他逻辑
        return View();
    }
}

在 View 中可以使用以下代码显示当前用户的用户名:

cs 复制代码
<p>Welcome, @User.Identity.Name!</p>

注意,执行 Windows 认证需要确保 IIS 服务器已经启用了 Windows 身份验证,并且用户的浏览器也支持 Windows 身份验证。

相关推荐
一知半解仙8 分钟前
当机器人学会泛化,而我在写Java:一名后端开发者的2026年8月21日观察手记
java·开发语言·机器人
青 春 记 忆29 分钟前
LeetCode 155. 最小栈|Python 解法详解
开发语言·python·leetcode
剩下了什么9 小时前
float32 与 float64 精度陷阱:如何在 Go 中避免错误使用
开发语言·后端·golang
指尖时光.9 小时前
Three.js 超全入门综合案例
开发语言·javascript·ecmascript
暴力求解10 小时前
Linux网络---传输层协议TCP(二)
linux·服务器·开发语言·网络·tcp/ip
吴声子夜歌10 小时前
Java面试题——基础(一)
java·开发语言
小庞在加油10 小时前
WinDbg实战:QT/跨平台项目死锁与无响应问题排查指南
开发语言·qt·windbg·工具
Vae_Mars11 小时前
C#中的delegate委托
开发语言·c#
一直走下去-明11 小时前
简单的http抓包解包完整代码
开发语言·python
caimouse12 小时前
ReactOS 图形系统分析(51):元文件子系统 — metafile.c
c语言·开发语言