Как настроить / использовать HTTP Public-Key-Pinning (HPKP) в приложении asp.net MVC на локальном хосте - PullRequest
0 голосов
/ 07 сентября 2018

Мне нужно настроить HPKP на локальном хосте. Я понятия не имею, как его настроить или использовать. Пожалуйста, помогите мне, если вы сделали это

1 Ответ

0 голосов
/ 07 сентября 2018

Реализация HPKP в ядре ASP.NET Простой способ реализации HPKP - использовать мою библиотеку, которую вы можете получить на NuGet: Joonasw.AspNetCore.SecurityHeaders.

Просто установите его в свой проект ASP.NET Core, а затем вы можете добавить заголовки HPKP в свое приложение с помощью одного вызова функции.

Пример настройки метода в Startup.cs:

public void Configure(IApplicationBuilder app, IHostingEnvironment env, 
ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug(LogLevel.Debug);

if (env.IsDevelopment())
{
    app.UseDeveloperExceptionPage();
    app.UseBrowserLink();
}
else
{
    app.UseHttpsEnforcement();
    app.UseHsts(new HstsOptions
    {
        Seconds = 30 * 24 * 60 * 60,
        IncludeSubDomains = false,
        Preload = false
    });

    app.UseHpkp(hpkp =>
    {
        hpkp.UseMaxAgeSeconds(7 * 24 * 60 * 60)
            .AddSha256Pin("nrmpk4ZI3wbRBmUZIT5aKAgP0LlKHRgfA2Snjzeg9iY=")
            .SetReportOnly()
            .ReportViolationsTo("/hpkp-report");
    });
}

app.UseStaticFiles();

app.UseMvc(routes =>
{
    routes.MapRoute(
        name: "hpkp-report",
        template: "hpkp-report",
        defaults: new { controller = "Report", action = "Hpkp" });

    routes.MapRoute(
        name: "default",
        template: "{controller=Home}/{action=Index}/{id?}");
});
   }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...