asp.net – 没有配置验证处理程序来处理方案:自动
发布时间:2020-12-16 00:42:32 所属栏目:asp.Net 来源:网络整理
导读:我更新了ASP.NET 5框架beta-8包与RC在以前工作的应用程序。在我运行下一个错误发生在启动过程中: InvalidOperationException: No authentication handler is configured to handle the scheme: Automatic Microsoft.AspNet.Http.Authentication.Internal.De
我更新了ASP.NET 5框架beta-8包与RC在以前工作的应用程序。在我运行下一个错误发生在启动过程中:
var defaultPolicy = new AuthorizationPolicyBuilder() .RequireAuthenticatedUser() .Build(); services.AddMvc(setup => { setup.Filters.Add(new AuthorizeFilter(defaultPolicy)); // Error occurs here }); 如果有人遇到类似的问题,我会感谢您的想法或解决方案可能出错了。此异常的解释也是值得赞赏的。 Startup.cs using Autofac; using Autofac.Extensions.DependencyInjection; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Hosting; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc.Filters; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.PlatformAbstractions; using SuperUserMVC.Configuration; using SuperUserMVC.Extensions; using SuperUserMVC.GlobalModules; using System; namespace SuperUserMVC { public class Startup { public IConfigurationRoot Configuration { get; set; } // Entry point for the application. public static void Main(string[] args) => WebApplication.Run<Startup>(args); public Startup(IHostingEnvironment env,IApplicationEnvironment appEnv) { var builder = new ConfigurationBuilder() .SetBasePath(appEnv.ApplicationBasePath) .AddJsonFile("appsettings.json"); Configuration = builder.Build(); } public IServiceProvider ConfigureServices(IServiceCollection services) { services.Configure<AppSettingsBase>(Configuration.GetSection("AppSettingsBase")); services.Configure<ConnectionString>(Configuration.GetSection("ConnectionString")); services.AddSqlServerCache(cache => { cache.ConnectionString = Configuration.Get<string>("ASPState:ConnectionString"); cache.SchemaName = Configuration.Get<string>("ASPState:Schema"); cache.TableName = Configuration.Get<string>("ASPState:Table"); }); services.AddSession(session => { session.IdleTimeout = TimeSpan.FromMinutes(120); }); // Only allow authenticated users. var defaultPolicy = new AuthorizationPolicyBuilder() .RequireAuthenticatedUser() .Build(); // Add MVC services to the services container. services.AddMvc(setup => { setup.Filters.Add(new AuthorizeFilter(defaultPolicy)); }); var builder = new ContainerBuilder(); builder.RegisterModule(new AutofacModule()); builder.Populate(services); var container = builder.Build(); return container.Resolve<IServiceProvider>(); } public void Configure(IApplicationBuilder app,IHttpContextAccessor httpContextAccessor) { // Catch unhandled exception in pipeline. bool isProductionEnvironment = Configuration.Get<bool>("environmentVariables:isProductionEnvironment"); app.UseCustomUnhandledException(isProductionEnvironment,Configuration.Get<string>("defaultErrorPagePath")); // Log requests. app.UseVisitLogger(isProductionEnvironment); // Session must be used before MVC routes. app.UseSession(); // Configure the HTTP request pipeline. app.UseCookieAuthentication(options => { options.AuthenticationScheme = "Cookies"; options.LoginPath = new PathString("/Account/Login/"); options.AccessDeniedPath = new PathString("/Account/Forbidden/"); options.CookieName = "MyCookie"; options.AutomaticAuthenticate = true; options.SessionStore = new MemoryCacheSessionStore(); }); AutoMapperInitializer.Init(); app.UseStaticFiles(); // Route configuration. app.UseMvc(routes => { routes.MapRoute( name: "AreaDefault",template: "{area:exists=Demo}/{controller=Home}/{action=Index}/{id?}" ); routes.MapRoute( name: "Default",template: "{controller=Home}/{action=Index}/{id?}" ); }); } } } 解决方法
尝试设置选项.AutomaticChallenge = true;在你的cookies选项,它应该工作。
options.AutomaticAuthentication被分为options.AutomaticAuthenticate和options.AutomaticChallenge。如果最后一个值为false,则抛出异常,因为没有验证中间件处理授权过滤器应用的挑战。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.NET性能优化之构建自定义文件缓存
- asp.net – 如何从日历控件中获取所选日期?
- asp.net – 如何将标签元素与单选按钮相关联
- asp.net-core – Visual Studio 2017 RC安装会中断Visual S
- asp.net-mvc-3 – Razor查看if语句是否正确
- 安装时安装Asp.Net SignalR错误
- asp.net – 实体框架和MVC应用程序中的奇怪编译错误
- asp.net-mvc – Razor – @ Html.Raw()仍在编码&在元标
- asp.net – Microsoft.Jet.OLEDB.4.0未在本地系统中注册
- asp.net-mvc – ASP.NET MVC – 单元测试过度杀毒? (TDD)
推荐文章
站长推荐
- 深入理解Asp.Net中WebForm的生命周期
- asp.net – 线程安全和MEF目录
- asp.net – 如何在不使用bin目录的情况下加载卸载
- 【DevExpress v17.2新功能预告】DevExpress ASP.
- 在IIS上部署ASP.NET Core项目的图文方法
- asp.net-mvc – MVC .net属性上必需属性的布尔值
- asp.net – 在Windows身份验证开启时使用ajax调用
- 【FastDFS】FastDFS和asp.net项目的结合
- 如何刷新#include文件 – 它们在IIS7 / ASP.NET上
- asp.net-mvc – 在我正在运行的Visual Studio 20
热点阅读