From 864a7630d58ebae92a93daba037ba0115cb4be13 Mon Sep 17 00:00:00 2001 From: Leendert de Borst Date: Sun, 7 Sep 2025 12:00:45 +0200 Subject: [PATCH] Tweak HTTPS required message, tweak crypto.js error handling (#1181) --- .../AliasVault.Client/Auth/Pages/Start.razor | 32 +++++++++++ .../Main/Layout/Footer.razor | 55 +------------------ .../Resources/Layout/Footer.en.resx | 8 --- .../Resources/Pages/Auth/Start.en.resx | 8 +++ .../wwwroot/css/tailwind.css | 37 ++++++++----- .../AliasVault.Client/wwwroot/js/crypto.js | 35 ++++++++++++ 6 files changed, 100 insertions(+), 75 deletions(-) diff --git a/apps/server/AliasVault.Client/Auth/Pages/Start.razor b/apps/server/AliasVault.Client/Auth/Pages/Start.razor index 36af992cb..75b220d3b 100644 --- a/apps/server/AliasVault.Client/Auth/Pages/Start.razor +++ b/apps/server/AliasVault.Client/Auth/Pages/Start.razor @@ -30,6 +30,22 @@

@Localizer["TaglineText"]

+ @if (_isHttpWarning) + { + + }
@if (Config.PublicRegistrationEnabled) { @@ -50,6 +66,7 @@ @code { private IStringLocalizer Localizer => LocalizerFactory.Create("Pages.Auth.Start", "AliasVault.Client"); + private bool _isHttpWarning = false; /// protected override async Task OnInitializedAsync() @@ -62,5 +79,20 @@ // Already authenticated, redirect to home page. NavigationManager.NavigateTo("/"); } + + CheckHttpProtocol(); + } + + /// + /// Checks if the current URL is using HTTP and shows warning if needed. + /// Only shows warning for non-localhost hostnames since browsers allow crypto operations on localhost via HTTP. + /// + private void CheckHttpProtocol() + { + var uri = new Uri(NavigationManager.Uri); + var isLocalhost = uri.Host.Equals("localhost", StringComparison.OrdinalIgnoreCase) || + uri.Host.Equals("127.0.0.1", StringComparison.OrdinalIgnoreCase) || + uri.Host.Equals("::1", StringComparison.OrdinalIgnoreCase); + _isHttpWarning = uri.Scheme == "http" && !isLocalhost; } } diff --git a/apps/server/AliasVault.Client/Main/Layout/Footer.razor b/apps/server/AliasVault.Client/Main/Layout/Footer.razor index d535e624c..b6b719ab4 100644 --- a/apps/server/AliasVault.Client/Main/Layout/Footer.razor +++ b/apps/server/AliasVault.Client/Main/Layout/Footer.razor @@ -4,31 +4,7 @@ @using Microsoft.Extensions.Localization @implements IDisposable -@if (_isHttpWarning) -{ -
-
-
-
- - - -
-

@Localizer["HttpsWarningTitle"]

-

@Localizer["HttpsWarningMessage"]

-
-
- -
-
-
-} - -