Sdílet prostřednictvím


Povolit nezabezpečenou dopravu v .NET.NET Aspire

Počínaje verzí .NET.NET Aspire Preview 5 dojde k chybovému ukončení hostitele aplikace, pokud je nakonfigurovaný applicationUrl s nezabezpečeným přenosem (bez protokolu TLS http). Toto je bezpečnostní funkce, která brání náhodnému vystavení citlivých dat. Existují však scénáře, ve kterých může být potřeba povolit nezabezpečenou dopravu. Tento článek vysvětluje, jak povolit nezabezpečenou dopravu v .NET.NET Aspire projektech.

Příznaky

Když spustíte projekt .NET.NET Aspire s applicationUrl nakonfigurovaným nezabezpečeným přenosovým protokolem, může se zobrazit následující chybová zpráva:

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.

Jak povolit nezabezpečený přenos

Pokud chcete v .NET.NET Aspirepovolit nezabezpečený přenos, nastavte proměnnou prostředí ASPIRE_ALLOW_UNSECURED_TRANSPORT na true. Tato proměnná prostředí slouží k řízení chování hostitele aplikace, pokud je applicationUrl nakonfigurován s nezabezpečeným přenosovým protokolem.

export ASPIRE_ALLOW_UNSECURED_TRANSPORT=true

Alternativně to můžete řídit prostřednictvím spouštěcího profilu, protože zpřístupňuje možnost konfigurovat proměnné prostředí pro každý profil. Pokud to chcete udělat, zvažte následující ukázková nastavení v souboru 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"
      }
    }
  }
}

Předchozí příklad ukazuje dva profily, https a http. Profil https je nakonfigurovaný pomocí zabezpečeného přenosového protokolu, zatímco profil http je nakonfigurovaný s nezabezpečeným přenosovým protokolem. Proměnná prostředí ASPIRE_ALLOW_UNSECURED_TRANSPORT je v profilu http nastavená na true, aby umožňovala nezabezpečený přenos.