Files
Umbraco-CMS/src/Umbraco.Configuration/Models/MemberPasswordConfigurationSettings.cs
T
2020-03-19 19:09:33 +01:00

39 lines
1.4 KiB
C#

using Microsoft.Extensions.Configuration;
using Umbraco.Core;
using Umbraco.Core.Configuration;
namespace Umbraco.Configuration.Models
{
internal class MemberPasswordConfigurationSettings : IMemberPasswordConfiguration
{
private const string Prefix = Constants.Configuration.ConfigSecurityPrefix + "MemberPassword:";
private readonly IConfiguration _configuration;
public MemberPasswordConfigurationSettings(IConfiguration configuration)
{
_configuration = configuration;
}
public int RequiredLength =>
_configuration.GetValue(Prefix + "RequiredLength", 10);
public bool RequireNonLetterOrDigit =>
_configuration.GetValue(Prefix + "RequireNonLetterOrDigit", false);
public bool RequireDigit =>
_configuration.GetValue(Prefix + "RequireDigit", false);
public bool RequireLowercase =>
_configuration.GetValue(Prefix + "RequireLowercase", false);
public bool RequireUppercase =>
_configuration.GetValue(Prefix + "RequireUppercase", false);
public string HashAlgorithmType =>
_configuration.GetValue(Prefix + "HashAlgorithmType", "HMACSHA256");
public int MaxFailedAccessAttemptsBeforeLockout =>
_configuration.GetValue(Prefix + "MaxFailedAccessAttemptsBeforeLockout", 5);
}
}