Class TwoFactorValidationProvider<TUmbracoIdentityUser, TTwoFactorSetupGenerator>
Base class for two-factor validation providers that validate tokens using an ITwoFactorProvider.
Inheritance
object
DataProtectorTokenProvider<TUmbracoIdentityUser>
Namespace: Umbraco.Cms.Infrastructure.Security
Assembly: Umbraco.Web.Common.dll
Syntax
public class TwoFactorValidationProvider<TUmbracoIdentityUser, TTwoFactorSetupGenerator> : DataProtectorTokenProvider<TUmbracoIdentityUser> where TUmbracoIdentityUser : UmbracoIdentityUser where TTwoFactorSetupGenerator : ITwoFactorProvider
Type Parameters
| Name | Description |
|---|---|
| TUmbracoIdentityUser | The type of the Umbraco identity user. |
| TTwoFactorSetupGenerator | The type of the two-factor setup generator. |
Constructors
View SourceTwoFactorValidationProvider(IDataProtectionProvider, IOptions<DataProtectionTokenProviderOptions>, ILogger<TwoFactorValidationProvider<TUmbracoIdentityUser, TTwoFactorSetupGenerator>>, ITwoFactorLoginService, TTwoFactorSetupGenerator)
Initializes a new instance of the TwoFactorValidationProvider<TUmbracoIdentityUser, TTwoFactorSetupGenerator> class.
Declaration
protected TwoFactorValidationProvider(IDataProtectionProvider dataProtectionProvider, IOptions<DataProtectionTokenProviderOptions> options, ILogger<TwoFactorValidationProvider<TUmbracoIdentityUser, TTwoFactorSetupGenerator>> logger, ITwoFactorLoginService twoFactorLoginService, TTwoFactorSetupGenerator generator)
Parameters
| Type | Name | Description |
|---|---|---|
| IDataProtectionProvider | dataProtectionProvider | The data protection provider. |
| IOptions<DataProtectionTokenProviderOptions> | options | The token provider options. |
| ILogger<TwoFactorValidationProvider<TUmbracoIdentityUser, TTwoFactorSetupGenerator>> | logger | The logger. |
| ITwoFactorLoginService | twoFactorLoginService | The two-factor login service. |
| TTwoFactorSetupGenerator | generator | The two-factor setup generator. |
Methods
View SourceCanGenerateTwoFactorTokenAsync(UserManager<TUmbracoIdentityUser>, TUmbracoIdentityUser)
Declaration
public override Task<bool> CanGenerateTwoFactorTokenAsync(UserManager<TUmbracoIdentityUser> manager, TUmbracoIdentityUser user)
Parameters
| Type | Name | Description |
|---|---|---|
| UserManager<TUmbracoIdentityUser> | manager | |
| TUmbracoIdentityUser | user |
Returns
| Type | Description |
|---|---|
| Task<bool> |
GetUserKey(TUmbracoIdentityUser)
Gets the unique key for the specified user.
Declaration
protected Guid GetUserKey(TUmbracoIdentityUser user)
Parameters
| Type | Name | Description |
|---|---|---|
| TUmbracoIdentityUser | user | The user to get the key for. |
Returns
| Type | Description |
|---|---|
| Guid | The unique key for the user. |
Exceptions
| Type | Condition |
|---|---|
| NotSupportedException | Thrown when the user type is not supported. |
ValidateAsync(string, string, UserManager<TUmbracoIdentityUser>, TUmbracoIdentityUser)
Declaration
public override Task<bool> ValidateAsync(string purpose, string token, UserManager<TUmbracoIdentityUser> manager, TUmbracoIdentityUser user)
Parameters
| Type | Name | Description |
|---|---|---|
| string | purpose | |
| string | token | |
| UserManager<TUmbracoIdentityUser> | manager | |
| TUmbracoIdentityUser | user |
Returns
| Type | Description |
|---|---|
| Task<bool> |