Debian: No authentication handler is configured to handle the scheme: Automatic

拜拜、爱过 提交于 2021-02-08 09:25:12

问题


I have some issue like this, but i can't understand how to solve it for Debian.

At first, i configure my application as described below

app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationScheme =MyAuthSchemeName,
                CookieName = MyCookiName,
                AutomaticAuthenticate = true,
                AutomaticChallenge = false,
                SlidingExpiration = true,
                ExpireTimeSpan = TimeSpan.FromDays(1),
                DataProtectionProvider = DataProtectionProvider.Create(MyApplicationName)
            });

app.UseJwtBearerAuthentication(new JwtBearerOptions
            { 
                AutomaticChallenge = false,
                AutomaticAuthenticate = true,
                Authority = IdentityServerConnectionString,
                RequireHttpsMetadata = false,
                BackchannelHttpHandler = new HttpClientHandler().ServerCertificateCustomValidationCallback = (request, cert, chain, errors) => true,
                TokenValidationParameters = new TokenValidationParameters
                {
                    ValidateAudience = false,
                    ValidateIssuer = false,
                }
            });

app.UseMvc();

For windows it works perfectly (I use Host for launching this code, not IIS !), but for Debian it fails. Any ideas?

UPD: I see next message in logs: Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationMiddleware MyAuthSchemeName was not authenticated. Failure message: Unprotect ticket failed


回答1:


I found solution for this issue. Key cause is a settings of DataProtectionProvider. For Debian it's needed to use code below

Startup.cs :

public void ConfigureServices(IServiceCollection services)
    {
      services.AddDataProtection().SetApplicationName(ApplicationName).
               PersistKeysToFileSystem(
                    new DirectoryInfo(Configuration["/some_path_to_folder_for_keys"]))
    }

And dataprovider initialization should be removed for cookie (from UseCookieAuthentication());



来源:https://stackoverflow.com/questions/44400170/debian-no-authentication-handler-is-configured-to-handle-the-scheme-automatic

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!