|
| 1 | +# Microsoft.AspNetCore.Identity |
| 2 | + |
| 3 | +```diff |
| 4 | + namespace Microsoft.AspNetCore.Identity |
| 5 | + { |
| 6 | + public class SignInManager<TUser> |
| 7 | + where TUser : class |
| 8 | + { |
| 9 | ++ public SignInManager(Microsoft.AspNetCore.Identity.UserManager<TUser> userManager, Microsoft.AspNetCore.Http.IHttpContextAccessor contextAccessor, Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory<TUser> claimsFactory, Microsoft.Extensions.Options.IOptions<Microsoft.AspNetCore.Identity.IdentityOptions> optionsAccessor, Microsoft.Extensions.Logging.ILogger<Microsoft.AspNetCore.Identity.SignInManager<TUser>> logger, Microsoft.AspNetCore.Authentication.IAuthenticationSchemeProvider schemes, Microsoft.AspNetCore.Identity.IUserConfirmation<TUser> confirmation, Microsoft.AspNetCore.Identity.IPasskeyHandler<TUser> passkeyHandler); |
| 10 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyCreationOptions> ConfigurePasskeyCreationOptionsAsync(Microsoft.AspNetCore.Identity.PasskeyCreationArgs creationArgs); |
| 11 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyRequestOptions> ConfigurePasskeyRequestOptionsAsync(Microsoft.AspNetCore.Identity.PasskeyRequestArgs<TUser> requestArgs); |
| 12 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyCreationOptions> GeneratePasskeyCreationOptionsAsync(Microsoft.AspNetCore.Identity.PasskeyCreationArgs creationArgs); |
| 13 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyRequestOptions> GeneratePasskeyRequestOptionsAsync(Microsoft.AspNetCore.Identity.PasskeyRequestArgs<TUser> requestArgs); |
| 14 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.SignInResult> PasskeySignInAsync(string credentialJson, Microsoft.AspNetCore.Identity.PasskeyRequestOptions options); |
| 15 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser>> PerformPasskeyAssertionAsync(string credentialJson, Microsoft.AspNetCore.Identity.PasskeyRequestOptions options); |
| 16 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAttestationResult> PerformPasskeyAttestationAsync(string credentialJson, Microsoft.AspNetCore.Identity.PasskeyCreationOptions options); |
| 17 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyCreationOptions?> RetrievePasskeyCreationOptionsAsync(); |
| 18 | ++ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyRequestOptions?> RetrievePasskeyRequestOptionsAsync(); |
| 19 | + } |
| 20 | ++ public sealed class AuthenticatorSelectionCriteria |
| 21 | ++ { |
| 22 | ++ public AuthenticatorSelectionCriteria(); |
| 23 | ++ public string? AuthenticatorAttachment { get; set; } |
| 24 | ++ public bool? RequireResidentKey { get; } |
| 25 | ++ public string? ResidentKey { get; set; } |
| 26 | ++ public string UserVerification { get; set; } |
| 27 | ++ } |
| 28 | ++ public class DefaultPasskeyHandler<TUser> : Microsoft.AspNetCore.Identity.IPasskeyHandler<TUser> where TUser : class |
| 29 | ++ { |
| 30 | ++ public DefaultPasskeyHandler(Microsoft.Extensions.Options.IOptions<Microsoft.AspNetCore.Identity.IdentityOptions> options); |
| 31 | ++ protected virtual System.Threading.Tasks.Task<bool> IsValidOriginAsync(Microsoft.AspNetCore.Identity.PasskeyOriginInfo originInfo, Microsoft.AspNetCore.Http.HttpContext httpContext); |
| 32 | ++ public System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser>> PerformAssertionAsync(Microsoft.AspNetCore.Identity.PasskeyAssertionContext<TUser> context); |
| 33 | ++ protected virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser>> PerformAssertionCoreAsync(Microsoft.AspNetCore.Identity.PasskeyAssertionContext<TUser> context); |
| 34 | ++ public System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAttestationResult> PerformAttestationAsync(Microsoft.AspNetCore.Identity.PasskeyAttestationContext<TUser> context); |
| 35 | ++ protected virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAttestationResult> PerformAttestationCoreAsync(Microsoft.AspNetCore.Identity.PasskeyAttestationContext<TUser> context); |
| 36 | ++ protected virtual System.Threading.Tasks.Task<bool> VerifyAttestationStatementAsync(System.ReadOnlyMemory<byte> attestationObject, System.ReadOnlyMemory<byte> clientDataHash, Microsoft.AspNetCore.Http.HttpContext httpContext); |
| 37 | ++ } |
| 38 | ++ public interface IPasskeyHandler<TUser> |
| 39 | ++ where TUser : class |
| 40 | ++ { |
| 41 | ++ System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser>> PerformAssertionAsync(Microsoft.AspNetCore.Identity.PasskeyAssertionContext<TUser> context); |
| 42 | ++ System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAttestationResult> PerformAttestationAsync(Microsoft.AspNetCore.Identity.PasskeyAttestationContext<TUser> context); |
| 43 | ++ } |
| 44 | ++ public sealed class PasskeyAssertionContext<TUser> |
| 45 | ++ where TUser : class |
| 46 | ++ { |
| 47 | ++ public PasskeyAssertionContext(); |
| 48 | ++ public required string CredentialJson { get; init; } |
| 49 | ++ public required Microsoft.AspNetCore.Http.HttpContext HttpContext { get; init; } |
| 50 | ++ public required string OriginalOptionsJson { get; init; } |
| 51 | ++ public TUser? User { get; init; } |
| 52 | ++ public required Microsoft.AspNetCore.Identity.UserManager<TUser> UserManager { get; init; } |
| 53 | ++ } |
| 54 | ++ public static class PasskeyAssertionResult |
| 55 | ++ { |
| 56 | ++ public static Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser> Fail<TUser>(Microsoft.AspNetCore.Identity.PasskeyException failure) |
| 57 | ++ where TUser : class; |
| 58 | ++ public static Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser> Success<TUser>(Microsoft.AspNetCore.Identity.UserPasskeyInfo passkey, TUser user) |
| 59 | ++ where TUser : class; |
| 60 | ++ } |
| 61 | ++ public sealed class PasskeyAssertionResult<TUser> |
| 62 | ++ where TUser : class |
| 63 | ++ { |
| 64 | ++ public Microsoft.AspNetCore.Identity.PasskeyException? Failure { get; } |
| 65 | ++ public Microsoft.AspNetCore.Identity.UserPasskeyInfo? Passkey { get; } |
| 66 | ++ public bool? Succeeded { get; } |
| 67 | ++ public TUser? User { get; } |
| 68 | ++ } |
| 69 | ++ public sealed class PasskeyAttestationContext<TUser> |
| 70 | ++ where TUser : class |
| 71 | ++ { |
| 72 | ++ public PasskeyAttestationContext(); |
| 73 | ++ public required string CredentialJson { get; init; } |
| 74 | ++ public required Microsoft.AspNetCore.Http.HttpContext HttpContext { get; init; } |
| 75 | ++ public required string OriginalOptionsJson { get; init; } |
| 76 | ++ public required Microsoft.AspNetCore.Identity.UserManager<TUser> UserManager { get; init; } |
| 77 | ++ } |
| 78 | ++ public sealed class PasskeyAttestationResult |
| 79 | ++ { |
| 80 | ++ public static Microsoft.AspNetCore.Identity.PasskeyAttestationResult Fail(Microsoft.AspNetCore.Identity.PasskeyException failure); |
| 81 | ++ public static Microsoft.AspNetCore.Identity.PasskeyAttestationResult Success(Microsoft.AspNetCore.Identity.UserPasskeyInfo passkey); |
| 82 | ++ public Microsoft.AspNetCore.Identity.PasskeyException? Failure { get; } |
| 83 | ++ public Microsoft.AspNetCore.Identity.UserPasskeyInfo? Passkey { get; } |
| 84 | ++ public bool? Succeeded { get; } |
| 85 | ++ } |
| 86 | ++ public sealed class PasskeyCreationArgs |
| 87 | ++ { |
| 88 | ++ public PasskeyCreationArgs(Microsoft.AspNetCore.Identity.PasskeyUserEntity userEntity); |
| 89 | ++ public string Attestation { get; set; } |
| 90 | ++ public Microsoft.AspNetCore.Identity.AuthenticatorSelectionCriteria? AuthenticatorSelection { get; set; } |
| 91 | ++ public System.Nullable<System.Text.Json.JsonElement> Extensions { get; set; } |
| 92 | ++ public Microsoft.AspNetCore.Identity.PasskeyUserEntity UserEntity { get; } |
| 93 | ++ } |
| 94 | ++ public sealed class PasskeyCreationOptions |
| 95 | ++ { |
| 96 | ++ public PasskeyCreationOptions(Microsoft.AspNetCore.Identity.PasskeyUserEntity userEntity, string optionsJson); |
| 97 | ++ public string AsJson(); |
| 98 | ++ public override string ToString(); |
| 99 | ++ public Microsoft.AspNetCore.Identity.PasskeyUserEntity UserEntity { get; } |
| 100 | ++ } |
| 101 | ++ public sealed class PasskeyException |
| 102 | ++ { |
| 103 | ++ public PasskeyException(string message, System.Exception? innerException); |
| 104 | ++ public PasskeyException(string message); |
| 105 | ++ } |
| 106 | ++ public sealed class PasskeyOriginInfo |
| 107 | ++ { |
| 108 | ++ public PasskeyOriginInfo(string origin, bool crossOrigin); |
| 109 | ++ public bool CrossOrigin { get; } |
| 110 | ++ public string Origin { get; } |
| 111 | ++ } |
| 112 | ++ public sealed class PasskeyRequestArgs<TUser> |
| 113 | ++ where TUser : class |
| 114 | ++ { |
| 115 | ++ public PasskeyRequestArgs(); |
| 116 | ++ public System.Nullable<System.Text.Json.JsonElement> Extensions { get; set; } |
| 117 | ++ public TUser? User { get; set; } |
| 118 | ++ public string UserVerification { get; set; } |
| 119 | ++ } |
| 120 | ++ public sealed class PasskeyRequestOptions |
| 121 | ++ { |
| 122 | ++ public PasskeyRequestOptions(string? userId, string optionsJson); |
| 123 | ++ public string AsJson(); |
| 124 | ++ public override string ToString(); |
| 125 | ++ public string? UserId { get; } |
| 126 | ++ } |
| 127 | ++ public sealed class PasskeyUserEntity |
| 128 | ++ { |
| 129 | ++ public PasskeyUserEntity(string id, string name, string? displayName); |
| 130 | ++ public string DisplayName { get; } |
| 131 | ++ public string Id { get; } |
| 132 | ++ public string Name { get; } |
| 133 | ++ } |
| 134 | + } |
| 135 | +``` |
0 commit comments