.NET .NET Aspire で安全でないトランスポートを許可する
.NET
.NET Aspire プレビュー 5 以降では、セキュリティで保護されていないトランスポート (TLS 以外の http
) プロトコルで applicationUrl
が構成されている場合、アプリ ホストがクラッシュします。 これは、機密データが誤って公開されるのを防ぐためのセキュリティ機能です。 ただし、セキュリティで保護されていないトランスポートを許可する必要がある場合があります。 この記事では、.NET.NET Aspire プロジェクトで安全でないトランスポートを許可する方法について説明します。
症状
セキュリティで保護されていないトランスポート プロトコルで構成された applicationUrl
を使用して .NET.NET Aspire プロジェクトを実行すると、次のエラー メッセージが表示されることがあります。
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
が安全でないトランスポート プロトコルで構成されている場合のアプリ ホストの動作を制御するために使用されます。
- Unix
-
Windows の
export ASPIRE_ALLOW_UNSECURED_TRANSPORT=true
または、プロファイルごとに環境変数を構成する機能が公開されているため、起動プロファイルを使用してこれを制御することもできます。 これを行うには、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
の 2 つのプロファイルを示しています。
https
プロファイルはセキュリティで保護されたトランスポート プロトコルで構成され、http
プロファイルは安全でないトランスポート プロトコルで構成されます。
ASPIRE_ALLOW_UNSECURED_TRANSPORT
環境変数は、セキュリティで保護されていないトランスポートを許可するために、http
プロファイルで true
に設定されます。
.NET Aspire