// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Collections.Generic;
namespace Microsoft.AspNetCore.Identity
{
///
/// Options for user tokens.
///
public class TokenOptions
{
///
/// Default token provider name used by email confirmation, password reset, and change email.
///
public static readonly string DefaultProvider = "Default";
///
/// Default token provider name used by the .
///
public static readonly string DefaultEmailProvider = "Email";
///
/// Default token provider name used by the .
///
public static readonly string DefaultPhoneProvider = "Phone";
///
/// Default token provider name used by the .
///
public static readonly string DefaultAuthenticatorProvider = "Authenticator";
///
/// Will be used to construct UserTokenProviders with the key used as the providerName.
///
public Dictionary ProviderMap { get; set; } = new Dictionary();
///
/// Gets or sets the used to generate tokens used in account confirmation emails.
///
///
/// The used to generate tokens used in account confirmation emails.
///
public string EmailConfirmationTokenProvider { get; set; } = DefaultProvider;
///
/// Gets or sets the used to generate tokens used in password reset emails.
///
///
/// The used to generate tokens used in password reset emails.
///
public string PasswordResetTokenProvider { get; set; } = DefaultProvider;
///
/// Gets or sets the used to generate tokens used in email change confirmation emails.
///
///
/// The used to generate tokens used in email change confirmation emails.
///
public string ChangeEmailTokenProvider { get; set; } = DefaultProvider;
///
/// Gets or sets the used to validate two factor sign ins with an authenticator.
///
///
/// The used to validate two factor sign ins with an authenticator.
///
public string AuthenticatorTokenProvider { get; set; } = DefaultAuthenticatorProvider;
}
}