// 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; namespace Microsoft.AspNet.Identity { /// /// Represents all the options you can used to configure the identity system. /// public class IdentityOptions { /// /// Gets or sets the for the identity system. /// /// /// The for the identity system. /// public ClaimsIdentityOptions ClaimsIdentity { get; set; } = new ClaimsIdentityOptions(); /// /// Gets or sets the for the identity system. /// /// /// The for the identity system. /// public UserOptions User { get; set; } = new UserOptions(); /// /// Gets or sets the for the identity system. /// /// /// The for the identity system. /// public PasswordOptions Password { get; set; } = new PasswordOptions(); /// /// Gets or sets the for the identity system. /// /// /// The for the identity system. /// public LockoutOptions Lockout { get; set; } = new LockoutOptions(); /// /// Gets or sets the for the identity system. /// /// /// The for the identity system. /// public SignInOptions SignIn { get; set; } = new SignInOptions(); /// /// Gets or sets the after which security stamps are re-validated. /// /// /// The after which security stamps are re-validated. /// public TimeSpan SecurityStampValidationInterval { get; set; } = TimeSpan.FromMinutes(30); /// /// 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; } = Resources.DefaultTokenProvider; /// /// 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; } = Resources.DefaultTokenProvider; /// /// 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; } = Resources.DefaultTokenProvider; /// /// Gets or sets the scheme used to identify application authentication cookies. /// /// The scheme used to identify application authentication cookies. public static string ApplicationCookieAuthenticationScheme { get; set; } = typeof(IdentityOptions).Namespace + ".Application"; /// /// Gets or sets the scheme used to identify external authentication cookies. /// /// The scheme used to identify external authentication cookies. public static string ExternalCookieAuthenticationScheme { get; set; } = typeof(IdentityOptions).Namespace + ".External"; /// /// Gets or sets the scheme used to identify Two Factor authentication cookies for round tripping user identities. /// /// The scheme used to identify user identity 2fa authentication cookies. public static string TwoFactorUserIdCookieAuthenticationScheme { get; set; } = typeof(IdentityOptions).Namespace + ".TwoFactorUserId"; /// /// Gets or sets the scheme used to identify Two Factor authentication cookies for saving the Remember Me state. /// /// The scheme used to identify remember me application authentication cookies. public static string TwoFactorRememberMeCookieAuthenticationScheme { get; set; } = typeof(IdentityOptions).Namespace + ".TwoFactorRememberMe"; /// /// Gets or sets the authentication type used when constructing an from an application cookie. /// /// The authentication type used when constructing an from an application cookie. public static string ApplicationCookieAuthenticationType { get; set; } = typeof(IdentityOptions).Namespace + ".Application.AuthType"; /// /// Gets or sets the authentication type used when constructing an from an external identity cookie. /// /// The authentication type used when constructing an from an external identity cookie. public static string ExternalCookieAuthenticationType { get; set; } = typeof(IdentityOptions).Namespace + ".External.AuthType"; /// /// Gets or sets the authentication type used when constructing an from an two factor authentication cookie. /// /// The authentication type used when constructing an from an two factor authentication cookie. public static string TwoFactorUserIdCookieAuthenticationType { get; set; } = typeof(IdentityOptions).Namespace + ".TwoFactorUserId.AuthType"; /// /// Gets or sets the authentication type used when constructing an from an two factor remember me authentication cookie. /// /// The authentication type used when constructing an from an two factor remember me authentication cookie. public static string TwoFactorRememberMeCookieAuthenticationType { get; set; } = typeof(IdentityOptions).Namespace + ".TwoFactorRemeberMe.AuthType"; } }