添加项目文件。
This commit is contained in:
37
鞋子止滑性能测试仪/PasswordExpirationService.cs
Normal file
37
鞋子止滑性能测试仪/PasswordExpirationService.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace 鞋子止滑性能测试仪
|
||||
{
|
||||
internal class PasswordExpirationService
|
||||
{
|
||||
private readonly TimeSpan _maxExpirationPeriod;
|
||||
private readonly TimeSpan _reminderPeriod;
|
||||
|
||||
public PasswordExpirationService()
|
||||
{
|
||||
// 读取配置文件中的密码时效策略
|
||||
var config = ConfigurationManager.AppSettings;
|
||||
_maxExpirationPeriod = TimeSpan.FromDays(int.Parse(config["MaxExpirationPeriodInDays"]));
|
||||
_reminderPeriod = TimeSpan.FromDays(int.Parse(config["ReminderPeriodInDays"]));
|
||||
}
|
||||
|
||||
public bool IsPasswordExpired(DateTime passwordLastModified)
|
||||
{
|
||||
// 计算密码当前的有效期
|
||||
TimeSpan passwordExpirationPeriod = passwordLastModified + _maxExpirationPeriod - DateTime.Now;
|
||||
return passwordExpirationPeriod < TimeSpan.Zero;
|
||||
}
|
||||
|
||||
public bool IsPasswordExpiringSoon(DateTime passwordLastModified)
|
||||
{
|
||||
// 判断密码是否接近过期提醒期
|
||||
TimeSpan passwordExpirationPeriod = passwordLastModified + _maxExpirationPeriod - DateTime.Now;
|
||||
return passwordExpirationPeriod < _reminderPeriod;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user