Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions BlazorWasmDemo/Server/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
var origin = new Uri(builder.Configuration["Origin"]!);
builder.Services.AddFido2(options =>
{
options.ServerDomain = origin.Host;
options.ServerName = "FIDO2 Server";
options.RPID = origin.Host;
options.RPName = "FIDO2 Server";
options.Origins = new HashSet<string> { origin.AbsoluteUri };
options.TimestampDriftTolerance = 1000;
});
Expand Down
4 changes: 2 additions & 2 deletions Demo/ConformanceTestController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ public ConformanceTestController(IOptions<Fido2Configuration> fido2Configuration

_fido2 = new Fido2(new Fido2Configuration
{
ServerDomain = fido2Configuration.Value.ServerDomain,
ServerName = fido2Configuration.Value.ServerName,
RPID = fido2Configuration.Value.RPID,
RPName = fido2Configuration.Value.RPName,
Origins = fido2Configuration.Value.FullyQualifiedOrigins,
},
ConformanceTesting.MetadataServiceInstance(
Expand Down
6 changes: 3 additions & 3 deletions Demo/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@

builder.Services.AddFido2(options =>
{
options.ServerDomain = builder.Configuration["fido2:serverDomain"];
options.ServerName = "FIDO2 Test";
options.RPID = builder.Configuration["fido2:serverDomain"];
options.RPName = "FIDO2 Test";
options.Origins = builder.Configuration.GetSection("fido2:origins").Get<HashSet<string>>();

// Other options available:
options.TimestampDriftTolerance = builder.Configuration.GetValue<int>("fido2:timestampDriftTolerance");
options.MDSCacheDirPath = builder.Configuration["fido2:MDSCacheDirPath"];
Expand Down
2 changes: 1 addition & 1 deletion Src/Fido2.Models/AssertionOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ public static AssertionOptions Create(
{
Challenge = challenge,
Timeout = config.Timeout,
RpId = config.ServerDomain,
RpId = config.RPID,
AllowCredentials = allowedCredentials,
UserVerification = userVerification,
Extensions = extensions
Expand Down
2 changes: 1 addition & 1 deletion Src/Fido2.Models/CredentialCreateOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ public static CredentialCreateOptions Create(
return new CredentialCreateOptions
{
Challenge = challenge,
Rp = new PublicKeyCredentialRpEntity(config.ServerDomain, config.ServerName, config.ServerIcon),
Rp = new PublicKeyCredentialRpEntity(config.RPID, config.RPName, config.ServerIcon),
Timeout = config.Timeout,
User = user,
PubKeyCredParams = pubKeyCredParams,
Expand Down
4 changes: 2 additions & 2 deletions Src/Fido2.Models/Fido2Configuration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ public Fido2Configuration()
/// <summary>
/// The effective domain of the RP. Should be unique and will be used as the identity for the RP.
/// </summary>
public string ServerDomain { get; set; }
public string RPID { get; set; }

/// <summary>
/// A human-friendly name of the RP.
/// </summary>
public string ServerName { get; set; }
public string RPName { get; set; }

/// <summary>
/// A serialized URL which resolves to an image associated with the entity. For example, this could be a user’s avatar or a Relying Party's logo. This URL MUST be an a priori authenticated URL. Authenticators MUST accept and store a 128-byte minimum length for an icon member’s value. Authenticators MAY ignore an icon member’s value if its length is greater than 128 bytes. The URL’s scheme MAY be "data" to avoid fetches of the URL, at the cost of needing more storage.
Expand Down
22 changes: 11 additions & 11 deletions Tests/Fido2.AspNet.Tests/AddFido2ExtensionTests.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using System;
using System;

using Fido2NetLib;

Expand All @@ -22,8 +22,8 @@ public void AddFido2_WithConfiguration_RegistersServices()
var configuration = new ConfigurationBuilder()
.AddInMemoryCollection(new Dictionary<string, string>
{
["ServerName"] = "Test Server",
["ServerDomain"] = "localhost",
["RPName"] = "Test Server",
["RPID"] = "localhost",
["Origins"] = "https://localhost:5001"
})
.Build();
Expand All @@ -44,13 +44,13 @@ public void AddFido2_WithConfiguration_RegistersServices()
// Verify Fido2Configuration can be resolved
var config = serviceProvider.GetService<Fido2Configuration>();
Assert.NotNull(config);
Assert.Equal("Test Server", config.ServerName);
Assert.Equal("localhost", config.ServerDomain);
Assert.Equal("Test Server", config.RPName);
Assert.Equal("localhost", config.RPID);

// Verify ISystemClock is registered
var systemClock = serviceProvider.GetService<ISystemClock>();
Assert.NotNull(systemClock);

// Verify MDS is null
// var mds = serviceProvider.GetService<IMetadataService>();
// Assert.Null(mds);
Expand All @@ -65,8 +65,8 @@ public void AddFido2_WithSetupAction_RegistersServices()
// Act
var builder = services.AddFido2(config =>
{
config.ServerName = "Action Server";
config.ServerDomain = "example.com";
config.RPName = "Action Server";
config.RPID = "example.com";
config.Origins = new HashSet<string> { "https://example.com" };
});

Expand All @@ -83,14 +83,14 @@ public void AddFido2_WithSetupAction_RegistersServices()
// Verify Fido2Configuration can be resolved with correct values
var config = serviceProvider.GetService<Fido2Configuration>();
Assert.NotNull(config);
Assert.Equal("Action Server", config.ServerName);
Assert.Equal("example.com", config.ServerDomain);
Assert.Equal("Action Server", config.RPName);
Assert.Equal("example.com", config.RPID);
Assert.Contains("https://example.com", config.Origins);

// Verify ISystemClock is registered
var systemClock = serviceProvider.GetService<ISystemClock>();
Assert.NotNull(systemClock);

// Verify MDS is null
// var mds = serviceProvider.GetService<IMetadataService>();
// Assert.Null(mds);
Expand Down
4 changes: 2 additions & 2 deletions Tests/Fido2.Tests/Attestation/Apple.cs
Original file line number Diff line number Diff line change
Expand Up @@ -264,8 +264,8 @@ public async Task TestApplePublicKeyMismatch()

var lib = new Fido2(new Fido2Configuration
{
ServerDomain = "6cc3c9e7967a.ngrok.io",
ServerName = "6cc3c9e7967a.ngrok.io",
RPID = "6cc3c9e7967a.ngrok.io",
RPName = "6cc3c9e7967a.ngrok.io",
Origins = new HashSet<string> { "https://www.passwordless.dev" },
});

Expand Down
Loading