Разрешить небезопасный транспорт в .NET.NET Aspire
Начиная с предварительной версии 5 .NET.NET Aspire, узел приложения завершится сбоем, если applicationUrl
настроен с использованием небезопасного транспортного протокола (протокол, не являющийся TLS http
). Это функция безопасности, которая позволяет предотвратить случайное воздействие конфиденциальных данных. Однако существуют сценарии, в которых может потребоваться разрешить небезопасный транспорт. В этой статье объясняется, как разрешить небезопасный транспорт в проектах .NET.NET Aspire.
Симптомы
При запуске проекта .NET.NET Aspire с applicationUrl
, настроенной с использованием небезопасного транспортного протокола, может появиться следующее сообщение об ошибке:
The 'applicationUrl' setting must be an https address unless the
'ASPIRE_ALLOW_UNSECURED_TRANSPORT' environment variable is set to true.
This configuration is commonly set in the launch profile.
Как разрешить небезопасную передачу данных
Чтобы разрешить небезопасный транспорт в .NET.NET Aspire, задайте для переменной среды ASPIRE_ALLOW_UNSECURED_TRANSPORT
значение true
. Эта переменная среды используется для управления поведением узла приложения при настройке applicationUrl
с небезопасным транспортным протоколом:
Кроме того, вы можете управлять этим с помощью профиля запуска, так как он предоставляет возможность настраивать переменные среды для каждого профиля. Для этого рассмотрим следующие примеры параметров в файле launchSettings.json
:
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "https://localhost:15015;http://localhost:15016",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"DOTNET_ENVIRONMENT": "Development",
"DOTNET_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:16099",
"DOTNET_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:17037"
}
},
"http": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://localhost:15016",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"DOTNET_ENVIRONMENT": "Development",
"DOTNET_DASHBOARD_OTLP_ENDPOINT_URL": "http://localhost:16099",
"DOTNET_RESOURCE_SERVICE_ENDPOINT_URL": "http://localhost:17038",
"ASPIRE_ALLOW_UNSECURED_TRANSPORT": "true"
}
}
}
}
В предыдущем примере показаны два профиля, https
и http
. Профиль https
настроен с помощью безопасного транспортного протокола, а профиль http
настроен с использованием небезопасного транспортного протокола. Переменная среды ASPIRE_ALLOW_UNSECURED_TRANSPORT
в профиле http
установлена на значение true
для разрешения небезопасной передачи данных.
.NET Aspire