C# Kentico 10密码通过C过期#

C# Kentico 10密码通过C过期#,c#,kentico,C#,Kentico,使用Kentico 10,用户如何使用c#以编程方式使其密码过期?UserInfo.UserPasswordExpiration没有setter(因此仅为只读)。我正在导入一组用户(正在工作),我想强制用户在首次登录时重置密码。要正确检查并设置密码,您需要 检查是否启用了密码过期: int num; bool isEnabled = AuthenticationHelper.IsPasswordExpirationEnabled("Sitename", out num); 然后检查用户

使用Kentico 10,用户如何使用c#以编程方式使其密码过期?UserInfo.UserPasswordExpiration没有setter(因此仅为只读)。我正在导入一组用户(正在工作),我想强制用户在首次登录时重置密码。

要正确检查并设置密码,您需要

检查是否启用了密码过期:

int num;    
bool isEnabled = AuthenticationHelper.IsPasswordExpirationEnabled("Sitename", out num);
然后检查用户上次更改密码的时间:

TimeSpan dateTime = UserInfoProvider.DateTimeNow = MembshipContext.AuthenticatedUser.UserPasswordLastChanged;
int daysSinceLastChange = num - dateTime.Days;
因此,如果
daysSinceLastChange
为正值,则密码将过期该天数。如果
daysSinceLastChange
为负值,密码将在这些天过期

要正确设置此设置,您需要执行以下几项操作:

  • 确保启用了“启用密码过期”。设置>安全性和成员资格>密码>密码过期
  • 在“设置”>“安全性和成员资格”>“密码”>“密码过期”中,确保您有有效的密码过期期限(以天为单位)
  • 对要使其无效的用户,将
    UserPasswordLastChanged
    值设置为类似10年前的荒谬值。您可以在导入用户或通过API执行此操作

要正确检查并设置此选项,您需要

检查是否启用了密码过期:

int num;    
bool isEnabled = AuthenticationHelper.IsPasswordExpirationEnabled("Sitename", out num);
然后检查用户上次更改密码的时间:

TimeSpan dateTime = UserInfoProvider.DateTimeNow = MembshipContext.AuthenticatedUser.UserPasswordLastChanged;
int daysSinceLastChange = num - dateTime.Days;
因此,如果
daysSinceLastChange
为正值,则密码将过期该天数。如果
daysSinceLastChange
为负值,密码将在这些天过期

要正确设置此设置,您需要执行以下几项操作:

  • 确保启用了“启用密码过期”。设置>安全性和成员资格>密码>密码过期
  • 在“设置”>“安全性和成员资格”>“密码”>“密码过期”中,确保您有有效的密码过期期限(以天为单位)
  • 对要使其无效的用户,将
    UserPasswordLastChanged
    值设置为类似10年前的荒谬值。您可以在导入用户或通过API执行此操作