You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Use HashSizeInBytes
* Use throw helpers
* Use FrozenDictionary
* Use required properties
* Use primary constructor
* Use byte[] for Base64Url encoded properties
* Use required properties (part 2)
* Improve nullability annotations for AuthenticationExtensionsPRFValues
* Improve nullability annotations for AssertionOptions
* Format code
* Update AssertionOptions.Challenge nullability
* Simplify AppleAppAttestRootCA construction
Copy file name to clipboardExpand all lines: Src/Fido2.Models/AssertionOptions.cs
+16-9Lines changed: 16 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -12,23 +12,28 @@ namespace Fido2NetLib;
12
12
publicclassAssertionOptions:Fido2ResponseBase
13
13
{
14
14
/// <summary>
15
-
/// This member represents a challenge that the selected authenticator signs, along with other data, when producing an authentication assertion.See the §13.1 Cryptographic Challenges security consideration.
15
+
/// This member represents a challenge that the selected authenticator signs, along with other data, when producing an authentication assertion.
16
+
/// See the §13.1 Cryptographic Challenges security consideration.
16
17
/// </summary>
17
18
[JsonPropertyName("challenge")]
18
19
[JsonConverter(typeof(Base64UrlConverter))]
19
20
publicbyte[]Challenge{get;set;}
20
21
22
+
#nullable enable
23
+
21
24
/// <summary>
22
-
/// This member specifies a time, in milliseconds, that the caller is willing to wait for the call to complete. This is treated as a hint, and MAY be overridden by the client.
25
+
/// This member specifies a time, in milliseconds, that the caller is willing to wait for the call to complete.
26
+
/// This is treated as a hint, and MAY be overridden by the client.
23
27
/// </summary>
24
28
[JsonPropertyName("timeout")]
25
29
publiculongTimeout{get;set;}
26
30
27
31
/// <summary>
28
-
/// This OPTIONAL member specifies the relying party identifier claimed by the caller.If omitted, its value will be the CredentialsContainer object’s relevant settings object's origin's effective domain
32
+
/// This OPTIONAL member specifies the relying party identifier claimed by the caller.
33
+
/// If omitted, its value will be the CredentialsContainer object’s relevant settings object's origin's effective domain
29
34
/// </summary>
30
35
[JsonPropertyName("rpId")]
31
-
publicstringRpId{get;set;}
36
+
publicstring?RpId{get;set;}
32
37
33
38
/// <summary>
34
39
/// This OPTIONAL member contains a list of PublicKeyCredentialDescriptor objects representing public key credentials acceptable to the caller, in descending order of the caller’s preference(the first item in the list is the most preferred credential, and so on down the list)
@@ -37,24 +42,26 @@ public class AssertionOptions : Fido2ResponseBase
/// This member describes the Relying Party's requirements regarding user verification for the get() operation. Eligible authenticators are filtered to only those capable of satisfying this requirement
45
+
/// This member describes the Relying Party's requirements regarding user verification for the get() operation.
46
+
/// Eligible authenticators are filtered to only those capable of satisfying this requirement
/// This OPTIONAL member contains additional parameters requesting additional processing by the client and authenticator. For example, if transaction confirmation is sought from the user, then the prompt string might be included as an extension.
52
+
/// This OPTIONAL member contains additional parameters requesting additional processing by the client and authenticator.
53
+
/// For example, if transaction confirmation is sought from the user, then the prompt string might be included as an extension.
Copy file name to clipboardExpand all lines: Src/Fido2.Models/Metadata/BiometricStatusReport.cs
+5-4Lines changed: 5 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -14,17 +14,18 @@ public class BiometricStatusReport
14
14
/// <summary>
15
15
/// Gets or sets the level of the biometric certification of this biometric component of the authenticator.
16
16
/// </summary>
17
-
[JsonPropertyName("certLevel"),Required]
18
-
publicushortCertLevel{get;set;}
17
+
[JsonPropertyName("certLevel")]
18
+
publicrequiredushortCertLevel{get;set;}
19
+
19
20
/// <summary>
20
21
/// Gets or sets a single USER_VERIFY constant indicating the modality of the biometric component.
21
22
/// </summary>
22
23
/// <remarks>
23
24
/// This is not a bit flag combination.
24
25
/// This value MUST be non-zero and this value MUST correspond to one or more entries in field userVerificationDetails in the related Metadata Statement.
25
26
/// </remarks>
26
-
[JsonPropertyName("modality"),Required]
27
-
publiculongModality{get;set;}
27
+
[JsonPropertyName("modality")]
28
+
publicrequiredulongModality{get;set;}
28
29
29
30
/// <summary>
30
31
/// Gets or sets a ISO-8601 formatted date since when the certLevel achieved, if applicable.
Copy file name to clipboardExpand all lines: Src/Fido2.Models/Metadata/ExtensionDescriptor.cs
+6-4Lines changed: 6 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,6 @@
1
-
usingSystem.ComponentModel.DataAnnotations;
1
+
#nullable enable
2
+
3
+
usingSystem.ComponentModel.DataAnnotations;
2
4
usingSystem.Text.Json.Serialization;
3
5
4
6
namespaceFido2NetLib;
@@ -14,8 +16,8 @@ public class ExtensionDescriptor
14
16
/// <summary>
15
17
/// Gets or sets the identifier that identifies the extension.
16
18
/// </summary>
17
-
[JsonPropertyName("id"),Required]
18
-
publicstringId{get;set;}
19
+
[JsonPropertyName("id")]
20
+
publicrequiredstringId{get;set;}
19
21
20
22
/// <summary>
21
23
/// Gets or sets the tag.
@@ -35,7 +37,7 @@ public class ExtensionDescriptor
35
37
/// This field MAY be missing or it MAY be empty.
36
38
/// </remarks>
37
39
[JsonPropertyName("data")]
38
-
publicstringData{get;set;}
40
+
publicstring?Data{get;set;}
39
41
40
42
/// <summary>
41
43
/// Gets or sets a value indication whether an unknown extensions must be ignored (<c>false</c>) or must lead to an error (<c>true</c>) when the extension is to be processed by the FIDO Server, FIDO Client, ASM, or FIDO Authenticator.
Copy file name to clipboardExpand all lines: Src/Fido2.Models/Metadata/PatternAccuracyDescriptor.cs
+3-4Lines changed: 3 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,4 @@
1
-
usingSystem.ComponentModel.DataAnnotations;
2
-
usingSystem.Text.Json.Serialization;
1
+
usingSystem.Text.Json.Serialization;
3
2
4
3
namespaceFido2NetLib;
5
4
@@ -14,8 +13,8 @@ public sealed class PatternAccuracyDescriptor
14
13
/// <summary>
15
14
/// Gets or sets the number of possible patterns (having the minimum length) out of which exactly one would be the right one, i.e. 1/probability in the case of equal distribution.
16
15
/// </summary>
17
-
[JsonPropertyName("minComplexity"),Required]
18
-
publiculongMinComplexity{get;set;}
16
+
[JsonPropertyName("minComplexity")]
17
+
publicrequiredulongMinComplexity{get;set;}
19
18
20
19
/// <summary>
21
20
/// Gets or sets maximum number of false attempts before the authenticator will block authentication using this method (at least temporarily).
0 commit comments