Hvordan er godkjenningstype navn registrert i asp.net vnext

stemmer
11

Så jeg oppdaterer en Open Source asp.net Identity leverandør for MongoDB å jobbe med Asp.Net Identity 3.0 (aka vnext). Så langt jeg har kunnet registrere leverandøren og opprette brukere, men når du bruker SignInManager hvis en riktig brukernavn / pass er forutsatt at jeg får feil

InvalidOperationException: Følgende godkjenningstyper ble ikke godtatt: Microsoft.AspNet.Identity.Application

Jeg har sporet opp den feilen å her https://github.com/aspnet/HttpAbstractions/blob/dev/src/Microsoft.AspNet.PipelineCore/DefaultHttpResponse.cs

men jeg kan ikke synes å se hvor SignInContext.Accepted navn er å bli lagt til SignInContext.

Jeg bruker Alpha-2 versjoner av alle de vnext biblioteker som blir brukt i VS14 CTP2

Nedenfor er mine Startup.cs

public void Configure(IBuilder app)
    {
        try {
            // For more information on how to configure your application, visit http://go.microsoft.com/fwlink/?LinkID=398940
            var configuration = new Configuration();
            configuration.AddJsonFile(config.json);
            configuration.AddEnvironmentVariables();

         //   app.UseLogRequests(try);
            app.UseErrorPage(ErrorPageOptions.ShowAll);
            app.UseServices(services =>
            {

                services.AddIdentity<MyUser>()
                .AddMongoDB<MyUser>(configuration.Get(Data:MongoIdentity:ConnectionString), configuration.Get(Data:MongoIdentity:DBName))
                .AddHttpSignIn<MyUser>();


                // Add MVC services to the services container
                services.AddMvc();
            });

            // Add static files to the request pipeline
            app.UseStaticFiles();

            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: default,
                    template: {controller}/{action}/{id?},
                    defaults: new { controller = Home, action = Index });

                routes.MapRoute(
                    name: api,
                    template: api/{controller}/{action},
                    defaults: new { action = Index });
            });

            // Add cookie-based authentication to the request pipeline
            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                LoginPath = new PathString(/Account/Login),
            });
        }
        catch (Exception ex)
        {
            Console.Write(ex.ToString());
            throw;
        }
    }
Publisert på 11/07/2014 klokken 03:43
kilden bruker
På andre språk...                            


1 svar

stemmer
8

Det viser seg at jeg hadde oppsettet MVC før CookieAuthentication så AuthenticationType ikke ble registrert i MVC da den prøvde å autentisere brukeren. Som MVC avhenger av autentiserings jeg bare måtte bump det opp og registrere det før MVC.

Svarte 14/07/2014 kl. 20:24
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more