From 73f97ed160ea1e3caaf0ac944df4607e6b5e0b2b Mon Sep 17 00:00:00 2001 From: Heimdall Date: Fri, 13 Nov 2026 22:34:13 +0000 Subject: [PATCH] Passkeys: IP-literal RP test where only that rule can refuse Co-Authored-By: Claude Sonnet 5.5 --- tests/Bifrost.Web.Tests/PasskeyTests.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/Bifrost.Web.Tests/PasskeyTests.cs b/tests/Bifrost.Web.Tests/PasskeyTests.cs index 9637fdd..3fe1381 100644 --- a/tests/Bifrost.Web.Tests/PasskeyTests.cs +++ b/tests/Bifrost.Web.Tests/PasskeyTests.cs @@ -951,10 +951,11 @@ public sealed class PasskeyTests Assert.False(party.IsAvailable); Assert.False(loud.IsAvailable); - foreach (var literal in new[] { "[::1]", "::1", "127.0.0.1" }) + foreach (var (publicBase, literal) in new[] { ("https://[::1]", "[::1]"), ("https://[::1]", "::1"), ("https://127.0.0.1", "127.0.0.1") }) { + // The public URL and the expected host agree, so only the IP-literal rule can refuse them. Assert.False(new PasskeyRelyingParty( - Microsoft.Extensions.Options.Options.Create(new Bifrost.Web.Configuration.BifrostHostOptions { PublicBaseUrl = "https://localhost", ExpectedHost = literal }), + Microsoft.Extensions.Options.Options.Create(new Bifrost.Web.Configuration.BifrostHostOptions { PublicBaseUrl = publicBase, ExpectedHost = literal }), new Microsoft.Extensions.Logging.Abstractions.NullLogger()).IsAvailable); }