Reference
Arcane.users.resetPassword()
Prepares a temporary credential but does not change the operating-system password; apply it with users.applyPassword().
This focused page is derived from the mechanically checked full member inventory.
Syntax
Arcane.users.resetPassword(username)
Parameters
Username
Return value
Promise<{user, operation, credentials}>
Description
Prepares a temporary credential but does not change the operating-system password; apply it with users.applyPassword().
Overview
Arcane.users.resetPassword(username) prepares a new temporary password for an
active, recorded Arcane user. Despite its name, this step does not change the
operating-system password. It requires users.manage, the Provisioner type,
and the exclusive Core operation boundary; the actual privileged change occurs
only in users.applyPassword().
Result and credential handling
The exact result is {user, operation, credentials}. user is exactly
{username, passwordReset: false, applyPasswordRequired: true, passwordStatus}. credentials contains one exact object:
{username, temporaryPassword, mustChangeAtNextSignIn: true, reason: "password-reset", applyPasswordRequired: true}.
The standard operation lifecycle events are emitted. Treat the credential in
both the response and operation.completed event as sensitive, show it through
protected UI, and do not log or durably store it.
Errors and recovery
USER_NOT_FOUND means the account is absent or not registered with Arcane.
STAGED_ACCOUNT_NOT_ACTIVE requires completing the staged activation first.
NOT_ARCANE_USER means the protected record does not show an active Arcane
shell assignment. Since this method has not changed the OS password, a lost
prepared credential can be discarded and prepared again.
Example
async function preparePasswordResetAfterConfirmation(username, confirmReset) {
if (!confirmReset(username)) {
return null;
}
const prepared = await Arcane.users.resetPassword(username);
// Pass prepared.credentials[0] only to protected credential UI.
return prepared;
}