asp.net mvc5用户登录的问题,急急急!!!!!!!!!!!!! 5C

各位,好,求大家帮忙
我做了一个mvc5 的portal站点,里面使用了:
public class CheckLoginAttribute : ActionFilterAttribute, IAuthenticationFilter
{
public void OnAuthentication(AuthenticationContext filterContext)
{
//var user = filterContext.HttpContext.Session["AdminUser"];
if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
{
var content = new ContentResult();
//解密获取加密的cookie里面的信息
var url = string.Format("{0}?returnUrl={1}", FormsAuthentication.LoginUrl, filterContext.HttpContext.Request.RawUrl);
content.Content = string.Format("alert('请先登录!');window.location.href='{0}';", url);
filterContext.Result = content;
}
}
}

拦截器进行身份拦截,在这个应用中,我通过
[CheckLogin]
public ActionResult Index()
{
return View();
}
这样可以拦截到,当登录后,就可以通过认证

            而我另外的一个应用,要通过这个站点进行管理,另外的一个应用:

             [CheckLogin]
    public ActionResult Index()
    {
        ViewBag.UserName = System.Web.HttpContext.Current.User.Identity.Name;
        comLog.Info(System.Web.HttpContext.Current.User.Identity.Name);
        return View();
    }


            两个的webconfig都用了forms认证

             <system.web>
<authentication mode="Forms">
     <forms loginUrl="http://192.168.1.4:8090/Login/Logon" name=".iamshop"/>
</authentication>


    结果在第二个应用中,怎么也拿不到用户,总是跳转到登录页面,求大家有没有解决办法,备注:第一个站点部署了一个站点端口:8090,另外的一个8091

    就是想在8090上面登录,然后8091上面拿到用户登录信息后,通过CheckLoginAttribute的认证后正常展示。。。。谢谢
mvc

3个回答

你这个属于单点登录问题,事实上你现在的配置两个网站用的是各自的用户权限体系

在同一个站点下,通过[CheckLogin]这个认证没问题,结果在8091站点下,怎么也通过不了,求大家给一个方案,谢谢

那怎么可以使用同一个用户体系呢?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问