Change the password of a user

To change the password of a user, you must perform the following:

  1. Require the user to input his old password.
    When changing the password the old password is required to authenticate the change.
  2. Get instance of the user manager.
    The manager is represented by the UserManager class. For more information about getting the instance, see For developers: Users.
  3. Get the user.
    For more information, read For developers: Query users.
  4. Change the password
    To change the password, you call the ChangePassword method of the UserManager class. NOTE: You must not directly set the new password to the Password property, as it will be stored in the data base without encryption. Calling the ChangePassword ``method causes the new password to be encrypted and assigned to the Password property of the User object.
  5. Save the changes.
    Save the changes to the manager.

Here is a code example:

C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telerik.Sitefinity.Security;
using Telerik.Sitefinity.Security.Model;

namespace Telerik.Sitefinity.Documentation.CodeSnippets.DeepDive.Security.Users
{
   public partial class ManagingUsersSnippets
   {
       public static bool ChangePassword(string username, string newPassword, string oldPassword)
       {
           UserManager userManager = UserManager.GetManager();

           User user = userManager.GetUser(username);

           bool result = userManager.ChangePassword(user.Id, oldPassword, newPassword);

           if (result)
           {
               userManager.SaveChanges();
           }

           return result;
       }
   }
}
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
New to Sitefinity?