在Umbraco 7中连接Auth0AccountController

时间:2016-03-16 23:26:26

标签: authentication asp.net-mvc-routing umbraco umbraco7 auth0

是否有人成功将Auth0与Umbraco 7集成为成员(前端公共用户,而非CMS后端用户)身份验证?

我已成功与owin启动集成并处理signin-auth0响应。但是我仍然坚持使用Auth0AccountController与Umbraco合作(我得到的是404)。有什么建议吗?

我已经尝试将〜/ Auth0Account添加到“umbracoReservedPaths”appSetting中,但我只是看到了一个略有不同的404(看起来不受Umbraco控制)。

我也尝试使用

在Startup.cs中映射路由
RouteTable.Routes.MapRoute(
    "Auth0Account",
    "Auth0Account/{action}",
    new
    {
        controller = "Auth0Account"
    }
);

但这会导致“路由表中的无路由与提供的值匹配”错误。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

在Startup.cs中映射Auth0Account路由是正确的:

RouteTable.Routes.MapRoute(
    "Auth0Account",
    "Auth0Account/{action}",
    new
    {
        controller = "Auth0Account"
    }
);

原来我的问题在于RedirectToLocal控制器中的默认重定向Auth0AccountController方法。它正在做一个

return RedirectToAction("Index", "Home");

我没有连接控制器。我将其替换为Umbraco兼容重定向。

此外,继承自Auth0AccountController而不是Controller继承Umbraco.Web.Mvc.SurfaceControllerUmbraco.Web.Mvc.RenderMvcController以向代码公开有用的Umbraco方法可能会有用。