Il faut dans un premier temps récupérer les informations de l'utilisateur sur lequel on souhaite travailler :
Imports Imports DotNetNuke.Entities
...
dim oUserInfo as Users.UserInfo
'Récupération des informations de l'utilisateur à partir du "user name"
oUserInfo = Users.UserController.GetUserByName(iPortalId, sUserName)
'Récupération des informations relatives au membership de cet utilisateur
Users.UserController.GetUserMembership(oUserInfo)
On note ici la récupération du "membership" de l'utilisateur. Ces informations sont nécessaires car nous allons devoir récupérer l'ancien mot de passe et cela n'est pas possible sans la propriété "PasswordAnswer" :
'Récupération de l'ancien mot de passe
dim sOldPassword as string = Users.UserController.GetPassword(oUserInfo, oUserInfo.Membership.PasswordAnswer)
Il ne reste plus qu'à modifier l'ancien mot de passe ainsi :
'Modification du mot de passe
Users.UserController.ChangePassword(oUserInfo, sOldPassword, sNewPassword)