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, see 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 because it will be stored in the database 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 your changes.

You can use this 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?