Как можно добавить доверие к самоподписанному сертификату в Windows?

Как настроить локальный SSL сертификат на Windows для связи между проектом React и asp.net core web api через HTTPS? Получаю ошибку "NET::ERR_CERT_COMMON_NAME_INVALID" после добавления сертификата через certmgr.msc и конфигурирования проекта вручную. Вот конфигурация приложения в asp.net core и файл Program.cs для установки SSL сертификата. Как исправить данную ошибку?
  • 21 марта 2024 г. 9:29
Ответы на вопрос 3
Для добавления доверия к самоподписанному сертификату в Windows, можно воспользоваться следующими шагами:

1. Откройте центр управления сертификатами (certmgr.msc) в Windows.
2. Перейдите в "Доверенные корневые центры сертификации" и "Личный".
3. Импортируйте ваш самоподписанный сертификат в оба хранилища.
4. Убедитесь, что сертификат успешно импортирован.

Чтобы настроить локальный SSL сертификат на Windows для связи между проектом React и ASP.NET Core Web API через HTTPS, вам необходимо произвести следующие действия:

1. Убедитесь, что у вас есть самоподписанный SSL сертификат, который вы успешно добавили в центр управления сертификатами Windows.
2. Настройте ваш ASP.NET Core Web API для работы с HTTPS. В вашем файле Startup.cs добавьте следующий код:

```csharp
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseHsts();
    }

    app.UseHttpsRedirection();
    app.UseRouting();
    app.UseAuthorization();

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllers();
    });
}
```

3. В файле Program.cs добавьте следующий код для установки SSL сертификата:

```csharp
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
        .UseStartup<Startup>()
        .UseKestrel(options =>
        {
            options.Listen(IPAddress.Loopback, 5001, listenOptions =>
            {
                listenOptions.UseHttps("mycertificate.pfx", "password");
            });
        });
```

4. В вашем проекте React настройте запросы к вашему ASP.NET Core Web API через HTTPS.

Если после выполнения этих шагов вы все еще получаете ошибку "NET::ERR_CERT_COMMON_NAME_INVALID", то возможно проблема связана с некорректной настройкой вашего SSL сертификата. Проверьте правильность его установки и настройки в вашем ASP.NET Core Web API. Также убедитесь, что правильный порт используется для работы через HTTPS.
<blockquote>Нужно поставить локальный SSL сертификат на Windows для подключения проекта React на asp.net core web api через https с использованием сертификата.</blockquote> <br/> Я не очень понимаю в том, что ты делаешь, но если надо, чтобы сертификат воспринимался браузером (т.е. работал для приложений, которые работают в браузере), и сертификат делался в OpenSSL, то достаточно в браузере запихать предоставленный pem файл в хранилище сертификатов браузера. <br/>
надо импортировать cert.pfx в хранилище сертификатов локальной машины (через certlm.msc), затем там же перенести/скопировать импортированный сертификат в "Доверенные корневые центры сертификации"
Похожие вопросы