监管用户访问IIS上的站点

时间:2014-10-14 06:10:34

标签: asp.net-mvc-4 iis episerver-7

我有一个应用程序,应该在开发时对Internet开放。该应用程序有自己的授权(表单)。

我们无法限制在一系列IP地址上访问服务器。我们还需要该网站的行为与没有全局访问检查(此环境中的QA测试应用程序)相似。

如何访问可以安排在IIS?

用户步骤:

  1. 访问site.com
  2. 用户会看到一个弹出窗口(全局用户名;全局密码 - 所有用户都一样)
  3. 重定向到网站(以匿名用户身份)
  4. 转到登录页面并输入本地用户名和密码(特定于当前用户)
  5. 我将不胜感激任何建议

    由于

1 个答案:

答案 0 :(得分:0)

  1. 创建过滤器(从ActionFilterAttribute继承)
  2. 覆盖OnActionExecuting方法(检查自定义cookie)。如果缺少自定义身份验证cookie:

    filterContext.HttpContext.Response.Clear(); filterContext.HttpContext.Response.StatusDescription =“未经授权”; filterContext.HttpContext.Response.AddHeader(“WWW-Authenticate”,“Basic realm = \”Secure Area \“”); filterContext.HttpContext.Response.Write(“401,please authenticate”); filterContext.HttpContext.Response.StatusCode = 401; filterContext.Result = new EmptyResult(); filterContext.HttpContext.Response.End(); base.OnActionExecuting(filterContext);

  3. 在Application_Start()

  4. 中的Global.asax中注册过滤器