net framework servicestack asp.net-mvc-5 asp.net-identity

framework - servicestack net



IntegraciĆ³n de ASP.NET MVC 5 Identidad y autenticaciĆ³n con ServiceStack 4 (1)

Recientemente, creé servicios web utilizando autenticación y roles a través de ServiceStack 4, incluidos los proveedores de OpenId y OAuth Google, Twitter y LinkedIn respaldados por un repositorio de MongoDB.

Me gustaría integrar esos servicios con mi sitio web ASP.NET 5 MVC que actualmente utiliza el nuevo marco de identidad de Microsoft (OWIN) con los mismos proveedores para el registro, la autenticación y los roles.

Preferiría usar ServiceStack para la autenticación, el registro y los roles y hacer que mis controladores MVC autoricen contra eso. He leído las publicaciones sobre SimpleMembership y la wiki sobre Autorización y manejo de sesiones en ServiceStack.

Lo que me gustaría saber es si hay una plantilla o ejemplo inicial que tome la plantilla más reciente de MVC 5 y la reemplace / integre con ServiceStack 4.

Específicamente, ¿cómo se reemplazan / modifican el AccountController , IdentityUser , UserManager y UserStore para usar ServiceStack?


Lo que me gustaría saber es si hay una plantilla o ejemplo inicial que tome la plantilla más reciente de MVC 5 y la reemplace / integre con ServiceStack 4.

ServiceStackVS es una extensión que permite crear proyectos con ServiceStack desde cero. Hay una plantilla para ASP.NET MVC 5.

Específicamente, ¿cómo se reemplazan / modifican el AccountController, IdentityUser, UserManager y UserStore para usar ServiceStack?

Específicamente, todos sus controladores deben heredar de ServiceStackController<T> (donde T es IAuthSession ). en el Application_Start tu global.asax necesitas inicializar tu AppHost. Entonces, tienes algo así

public class MyAppHost : AppHostBase { public MyAppHost() : base("My Service Name") { } public override void Configure(Container container) { // Configure your container here (authentication, plugins...) } } public class MvcApplication : HttpApplication { private MyAppHost AppHost { get; set; } protected void Application_Start() { //... AppHost = new MyAppHost(this).Init(); ControllerBuilder.Current.SetControllerFactory(new FunqControllerFactory(AppHost.Container)); //... } }